III-II - BTECH - VLSI Design - Unit 5
III-II - BTECH - VLSI Design - Unit 5
COURSE MATERIAL
UNIT 5
COURSE B.TECH
DEPARTMENT ECE
SEMESTER 32
Version V-1
BTECH_ECE-SEM 32
SVCETIRUPATI
2 PREREQUISITES 1
3 SYLLABUS 1
4 COURSE OUTCOMES 1
5 CO - PO/PSO MAPPING 2
6 LESSON PLAN 2
7 ACTIVITY BASED LEARNING 2
8 LECTURE NOTES 2
5.1 Introduction on HDL 2
5.2 Features of VHDL 3
5.9 TESTING 10
5.10 Test Classification 11
5.11 Design for Testability 11
5.12 Controllability/Observability 12
5.13 Test Approaches 12
5.14 Generating and Validating Test-Vectors-Automatic test-
13
pattern generation (ATPG)
BTECH_ECE-SEM 32
SVCETIRUPATI
9 PRACTICE QUIZ 27
10 ASSIGNMENTS 29
11 PART A QUESTIONS & ANSWERS (2 MARKS QUESTIONS) 29
12 PART B QUESTIONS 30
13 SUPPORTIVE ONLINE CERTIFICATION COURSES 31
14 REAL TIME APPLICATIONS 31
BTECH_ECE-SEM 32
SVCETIRUPATI
1. Course Objectives
The objectives of this course is to
1. To acquire knowledge on adders and shifters.
2. To understand the functioning of ALUs.
3. To present different types of multipliers.
4. To explain parity generators and comparators.
5. To analyze high density memory elements.
6. To describe different VLSI design styles.
2. Prerequisites
Students should have knowledge on
1. Electronic Devices and Circuits
2. Switching Theory and Logic Design
3. Digital System Design
3. Syllabus
UNIT V
VHDL Synthesis: VHDL Synthesis, Circuit Design Flow, Circuit Synthesis, Simulation,
Layout, Design capture tools, Design Verification Tools.
Test and Testability: Fault-modelling and simulation, test generation, design for
testability, Built-in-self-test.
4. Course outcomes
1. Understand the concepts of Sub-System Design.
2. Analyze and Design High density memory elements and counters
3. Identify and Understand Various VLSI design styles.
4. Understand the full custom and semi-custom design approaches.
CO2 3 3 3 2 2 1 1 1 1 1 2
CO3 3 3 3 2 2 1 1 1 1 1 2
CO4 3 3 3 2 2 1 1 1 1 1 2
1|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
6. Lesson Plan
11 3 Built-in-self-test. T1, R1
8. Lecture Notes
2|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
3|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
4|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Translation
The RTL description is converted by the logic synthesis tool to an un-optimized,
intermediate, internal representation. This process is known as translation. It is not
user controllable. It is relatively simple and uses techniques of HDL constructs
interpretation is a process which converts all conditional or sequential and
concurrent statements to Boolean equivalent format.
Boolean optimization
The optimization process takes an unoptimized Boolean description and converts
it to an optimized Boolean description. Optimization is the process which
decreases the area or increases the speed of a design.
5|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Flattening
The process of converting unoptimized Boolean description to PLA format is known
as flattening. A PLA structure is a very easy description in which to perform Boolean
optimization. (conversion of Boolean equation into a two level sum of product
form)
Factoring
Factoring is to add intermediate terms.
Mapping to gates
The mapping process takes the optimised Boolean description and uses the logical
and timing information from a technology library to build a netlist. This netlist is
targeted to the users needs for area and speed. There are a number of possible
netlists that are functionally same but vary widely in speed and area.
5.5 SIMULATION
Simulation is the process of applying stimuli (test inputs) to design under test over
same duration of time and producing the response from the design under test.
Simulation verifies the operation of user’s design before actually implementing it
as hardware. Necessity of simulation is:
Need to test the designs prior to implementation and usage.
Reduce the time for development
Decrease the time to market.
This list is ordered from high-level to low-level simulation (high-level being more
abstract and low-level being more detailed). Proceeding from high-level to low-
level simulation, the simulations become more accurate, but they also become
progressively more complex and take longer to run. While it is just possible to
perform a behavioural-level simulation of a complete system, it is impossible to
perform a circuit-level simulation of more than a few hundred transistors.
6|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
There are several ways to create an imaginary simulation model of a system.
One method models large pieces of a system as black boxes with inputs and
outputs. This type of simulation (often using VHDL or Verilog) is called behavioural
simulation. Functional simulation ignores timing and includes unit-delay simulation,
which sets delays to a fixed value (for example, 1 ns). Once a behavioural or
functional simulation predicts that a system works correctly, the next step is to
check the timing performance. At this point a system is partitioned into ASICs and
a timing simulation is performed for each ASIC separately (otherwise the simulation
run times become too long). One class of timing simulators employs timing
analysis that analyzes logic in a static manner, computing the delay times for each
path. This is called static timing analysis because it does not require the creation
of a set of test (or stimulus) vectors (an enormous job for a large ASIC). Timing
analysis works best with synchronous systems whose maximum operating
frequency is determined by the longest path delay between successive flip-flops.
The path with the longest delay is the critical path.
Logic simulation or gate-level simulation can also be used to check the timing
performance of an ASIC. In a gate-level simulator a logic gate or logic cell (NAND,
NOR, and so on) is treated as a black box modelled by a function whose variables
are the input signals. The function may also model the delay through the logic cell.
Setting all the delays to unit value is the equivalent of functional simulation. If the
timing simulation provided by a black-box model of a logic gate is not accurate
enough, the next, more detailed, level of simulation is switch-level simulation which
models transistors as switches—on or off. Switch-level simulation can provide more
accurate timing predictions than gate-level simulation, but without the ability to
use logic-cell delays as parameters of the models. The most accurate, but also the
most complex and time-consuming, form of simulation is transistor-level simulation.
A transistor-level simulator requires models of transistors, describing their nonlinear
voltage and current characteristics.
Each type of simulation normally uses a different software tool. A mixed-mode
simulator permits different parts of an ASIC simulation to use different simulation
modes. For example, a critical part of an ASIC might be simulated at the transistor
level while another part is simulated at the functional level. Be careful not to
confuse mixed-level simulation with a mixed analog/digital simulator, these
are mixed-level simulators.
7|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
HDL design can be used for designing ICs like processor or any other kind of
digital logic chip.
HDL specifies the model for the expected behaviour of circuit before actual
circuit design and implementation.
PLDs like FPGA or CPLD can be designed with HDLs. HDL code is fed into
logic compiler and output is uploaded into actual device. The important
property of this procedure is that it is possible to change the code many
times, compile it and upload in the same device.
Schematic Design
8|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
In cell based designs a schematic rule checker used to verify the schematics
i.e schematic rule violation. The violation of rule may be indicated in terms
of warning or errors.
SRC warnings:
o Floating wire segments
o Open connection
o Higher fan-out
SRC errors
Undefined inputs/open inputs
Unmatched bus connections
Multiple drivers connection to single line
Different I/O pins
9|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
5.9 TESTING
Testing is everything when it comes to making $$$$$.
Selling bad silicon can bankrupt a company.
Three main categories
– Functionality test or logic verification (before tapeout)
• Make sure functionality is correct
– Silicon debug (on first batch of chips from fab)
• detective work
• You don’t want to mass-produce bad chips
– Manufacturing test (on each mfg’d chip before shipping)
• You don’t want to ship bad chips
Testing and/or debugging a chip costs at various levels
Wafer level -$0.01-$0.10
Packaged chip level -$0.10-$1
Board level -$1-$10
System level -$10-$100
Field level -$100-$1000
Cost goes up exponentially if fault detected at later stages
$0.01-$0.10 $0.10-$1 $1-$10 $10-$100 $100-$1000
Testing is one of the most expensive parts of chips
– Logic verification accounts for > 60% of design effort for many chips
– Debug time after fabrication has enormous opportunity cost
– Shipping defective parts can sink a company
Logic Verification
Does the chip simulate correctly?
– Usually done at HDL level
– Verification engineers write test bench for HDL
• Can’t test all cases
• Look for corner cases
• Try to break logic design
- Good tests require ingenuity
10|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Manufacturing Test
A speck of dust on a wafer is sufficient to kill chip
-Yield of any chip is < 100%
– Must test chips after manufacturing before delivery to customers to only ship
good parts
-Manufacturing testers are very expensive
– Minimize time on tester
– Careful selection of test vectors
DFT techniques are design efforts specifically employed to ensure that a device in
testable.
11|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Examples:
DFT increase in Area & increase in Logic complexity Yield decreases
For fixed fault coverage, defect level increases.
Therefore, DFT must guarantee to increase fault coverage
Provide circuitry to enable test
Provide test patterns that guarantee reasonable coverage
N inputs K outputs
N inputs Combinational K outputs Combinational
Logic Logic
Module Module
M state regs
5.12 Controllability/Observability
Combinational Circuits:
Controllable and observable: The ability to set some circuit nodes to a
certain states or logic values. The ability to observe the state or logic
values of internal nodes.
Sequential Circuits: State! -Turn into combinational circuits or use self-
test
Memory: requires complex patterns- Use self-test
12|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
» Advanced packaging and assembly techniques extend problem to the
board level
1
sa1
(input)
13|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Z
x1
, : x1 sa1
: x1 sa0 or
x3
x2
x2 sa0
: Z sa1
Covers almost all (other) occurring faults, such as opens and shorts.
x1 x2
Z
x1
x2
Causes short circuit between Vdd and GND for A=C=0, B=1
‘1’ B D
Possible approach: Supply Current Measurement (IDDQ)
sa0
Fault enabling
1
1 1
Out
1
1
Fault propagation 1 0
0
Techniques Used: D-algorithm, Podem
15|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
16|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
17|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
ScanIn ScanOut
Out
In Combinational Combinational
Register
Register
Logic Logic
A B
18|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
SCANIN SCANOUT
IN
LOAD KEEP
19|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
In 0 In1 In2 In 3
Test
1
2
Scan-Path Testing
A B
SCANIN
REG[1] REG[0]
REG[2] REG[3]
REG[4]
COMPIN
COMP
SCANOUT
REG[5]
OUT
20|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
5.21 Boundary Scan (JTAG)
(Sub)-Circuit
Test Controller
21|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
5.23 Linear-Feedback Shift Register (LFSR)
22|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
In
Counter
5.25 BILBO
D0 D1 D2
B0
B1
ScanIn ScanOut
mux
R R R
S0 S1 S2
B0 B1 Operation mode
1 1 Normal
0 0 Scan
1 0 Pattern generation or
Signature analysis
0 1 Reset
BILBO Application
23|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
ScanIn ScanOut
BILBO-B
BILBO-A
Logic Logic
BIST TECHNIQUES:
24|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
The BIST techniques are classified based on the operational condition of the
circuit under test (CUT):
Off-Line BIST
On-Line BIST
ON-LINE BIST:
Testing occurs during normal functional operating conditions (No test mode,
Real-Time error detection).
Off-Line BIST:
Deals with testing a system when it is not carrying out its normal functions (Test
mode, Non-Real-Time error detection).
25|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Physical segmentation
Weighted: Non-uniform distribution of 0’s & 1’s, improved fault coverage, using
LFSR added with combinational circuits.
Adaptive: Using intermediate results of fault simulation to modify 0’s & 1’s
weights, more efficient, more hardware complexity.
Alias: Error we output when faulty & fault-free sig. are the same.
Compression of:
Compression problems:
26|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
Calculation of good circuit signatures:
One’s count : The no. Of times when 1 occurs in each output (counter).
Transition count : The no. of transitions (0 =>1,1=>0) in the output (XOR +counter).
Parity checking : The parity of response string, 0 if even & 1 if odd (XOR + D-FF).
Syndrome checking : the normalized no. of 1’s in output string (k/2**n when k is no.
of min-terms in an n input circuit), (All possible combination tests).
Advantages
Disadvantages
9. Practice Quiz
1. What is the process of flattening?
(a) Converting an optimized function to unoptimized form
(b) Converting a Boolean function to PAL format
(c) Converting a Boolean function to PLA format
(d) Converting a Boolean function to POS form
27|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
28|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
11.Setup time is the time required for input data to settle after the triggering edge of the
clock.
a) True
b) False
10. Assignments
S.No Question BL CO
What is the need for testing? Discuss in detail about testing at CO3,
1 2
various levels of chip fabrication? CO4
CO3,
2 Explain about synthesis and simulation steps 2
CO4
Explain about the VHDL synthesis? CO3,
3 2
CO4
2 CO3,
4 What is DFT? Explain the types of DFT
CO4
2 CO3,
5 What is simulation? Explain about different types of Simulation?
CO4
29|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
(conversion of Boolean equation into a two level sum of product
form)
4 What are the TYPES OF SIMULATION
Simulators are usually divided into the following categories
or simulation modes :
Behavioural simulation
Functional simulation CO3,
2
Static timing analysis CO4
Gate-level simulation
Switch-level simulation
Transistor-level or circuit-level simulation
30|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
31|V L S I D - U N I T - V
BTECH_ECE-SEM 32
SVCETIRUPATI
32|V L S I D - U N I T - V
BTECH_ECE-SEM 32