0% found this document useful (0 votes)
53 views38 pages

Vlsi Economy

VLSI ECONOMY

Uploaded by

anjugadu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
53 views38 pages

Vlsi Economy

VLSI ECONOMY

Uploaded by

anjugadu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 38

EELE 414 Introduction to VLSI Design

Module #1 Introduction & Economy

Agenda
1.
2.
3.
4.

Course Logistics
Course Content
Design Implementation Options
VLSI Economy

Announcements
1.
2.
3.
4.
5.

Welcome
All assignments are posted to the course website
Please check your email regularly
There is a digital circuit review at the end of these lecture notes
Read Chapter 1

EELE 414 Introduction to VLSI Design

Module #1
Page 1

Course Overview

Office Hours: Check my website for most recent schedule.


Also available by email appointment

Requisites:

Grading: Homework - 40%


Exam #1
Exam #2
Exam #3

Pre-requisite EE262, EE317

- 20%
- 20%
- 20%

- Homework Assignments will be posted on Tuesdays


- Homework Assignments are due at the beginning of class on the following Thursday.
(i.e., 1.5 weeks later)
- Late homework will be accepted for one week after the due date with a penalty of
50% point reduction. No credit will be given for assignments over one week late.
- No make up exams will be given. Plan on being available on the exam dates.
- Check website frequently for the most up to date schedule.

EELE 414 Introduction to VLSI Design

Module #1
Page 2

Course Overview

Where does this course fit into the Electrical Engineering curriculum?

EELE 414 Introduction to VLSI Design

Module #1
Page 3

Course Overview

Where does this course fit into the Computer Engineering curriculum?

EELE 414 Introduction to VLSI Design

Module #1
Page 4

Course Content

What is this course?


- An introductory course into VLSI Circuit Design
- We will learn the transistor level implementation of the digital logic blocks used in VLSI designs
- We will learn the design and analysis, simulation, layout, and fabrication of these circuits
- We will learn to use modern CAD tools to design these circuits

What topics will be covered?


1)
2)
3)
4)
5)
6)
7)
8)
9)
10)
11)

VLSI Implementation Options / Economy


MOSFET Characteristics
SPICE Modeling
Circuit Layout
CMOS Fabrication
Static Behavior of a MOS Inverter
Dynamic Behavior of a MOS Inverter
CMOS Logic Gates
Sequential Logic
SRAM
DRAM

EELE 414 Introduction to VLSI Design

Module #1
Page 5

Course Content

At What level can we design?


- a level of abstraction allows
the description of larger and more
complex systems
- but we lose touch with the details
of the implementation
- as engineers, we want to have
experience in all levels of abstraction.

EELE 414 Introduction to VLSI Design

Module #1
Page 6

Course Content

What areas of VLSI do my EE/CpE courses cover?

EE367
EE261

EE414

EE317
You are here

EELE 414 Introduction to VLSI Design

Module #1
Page 7

Course Content

CAD / CAE Tools


- Modern designs are too large to be designed using manual techniques
- We rely on a set of CAD / CAE tools in order to manage the complexity of the designs
- We won't use all of the tools for a VLSI design in this course, but it is good to understand the basic
options and how they are used in a typical VLSI design

Analog Simulators
- SPICE, Cadence Spectre
- Simulation Program for the Integrated Circuit Environment
- Numerical Solver that performs KVL, KCL, and Branch Equations
- Performs Numerical Integration for transient simulations
Advantages
- Real analog view of signals
Disadvantages
- long run time limits number of nodes that can be simulated
- typically used for 10's of transistors
- full VLSI designs can't be simulated using SPICE

EELE 414 Introduction to VLSI Design

Module #1
Page 8

Course Content
Digital Simulators
- ModelSim, Xilinx, NC-Verilog
- only gives the state of the node (0,1,X,x,Z,z,)
- this simplifies computation which reduces run time
- allows 1000's of nodes to be simulated simultaneously
Advantages
- many nodes can be simulated
- relevant for VLSI systems
Disadvantages
- only see the state, not the analog nature

Analog vs. Digital Simulation


- We use Analog simulation to verify the operation of basic building blocks (inverters, NANDs)
- From the analog results, we define specs used in the digital simulation (t rise, tfall, tprop, fanout)
- the digital simulations then incorporate the specs of the block as timing delays

EELE 414 Introduction to VLSI Design

Module #1
Page 9

Course Content
Design Entry

Sel

- Schematics
A

Out

B
- Hardware Description Language (HDL)
if (Sel = 0)
Out = A
else
Out = B

Synthesis

- Automatically generates the gate level netlist from an HDL


Sel
if (Sel = 0)
Out = A
else
Out = B

Synthesis

EELE 414 Introduction to VLSI Design

A
B

Out

Module #1
Page 10

Course Content
Layout

- Physical implementation of the circuitry

Side

Top

DRC / LVS

- Design Rule Checker: Were manufacturing capabilities violated


- Layout versus Schematic Check

EELE 414 Introduction to VLSI Design

Module #1
Page 11

Course Content
VLSI Design Sizes
- more transistors are being integrated on chip
- this means we must rely more heavily on CAD/CAE

EELE 414 Introduction to VLSI Design

Module #1
Page 12

Course Content
VLSI Design Process

EELE 414 Introduction to VLSI Design

Module #1
Page 13

Design Implementation Options


Implementations Options
- once a design is defined at the gate level, there are many options to implement the design
- each option is an engineering trade-off between
1) Cost
: up-front, engineering time, per-piece
2) Schedule
: how long does it take to get to market
3) Performance : does the final design meet spec (features, speed, power, area)
- VLSI designs are especially difficult due to the rapid progression of fabrication technology
- a new process is available every 18-36 months
- each process is faster, small, and takes less power
- product life cycles can also be short
- if development takes too long, a competitor can have a competing product in a better process
- the product may be obsolete before enough are sold to cover the investment

EELE 414 Introduction to VLSI Design

Module #1
Page 14

Design Implementation Options


Custom ASIC
- "Application Specific Integrated Circuit"
- each gate is designed, laid out, and optimized by hand
Advantages
- Best circuit performance
- Best use of area on silicon
Disadvantages
- Long Design Cycle
- Full Custom Mask = More up-front $$$
- Takes skilled physical design engineers

Standard Cell
- all of the gates and basic building blocks are designed
- each block has a spec sheet, layout, symbol, HDL instance, and simulation deck
- the designer combines the pre-existing blocks to form the new ASIC
- still considered an ASIC
Advantages
- faster development
- still relatively fast in performance
Disadvantages
- not as much optimization in performance, area, power as a custom ASIC

EELE 414 Introduction to VLSI Design

Module #1
Page 15

Design Implementation Options


Gate Array - transistors are already created but not connected
- the designer provides the interconnect design to implement the given functionality
aka
Advantages
"structured
- faster development time
ASIC"
Disadvantages
- less performance

FPGA

- Field Programmable Gate Array


- an array of programmable logic blocks are designed and packaged
- the designer creates a programming file to implement the given functionality
- user downloads the file and is running in hardware without any fab
Advantages
- fastest development
Disadvantages
- lowest performance

EELE 414 Introduction to VLSI Design

Module #1
Page 16

Design Implementation Options


Trade-offs
Up-Front Cost
Custom ASIC

Development Time

Per-Piece Cost

most

most

least

least

least

most

STD Cell ASIC


Gate Array
FPGA

EELE 414 Introduction to VLSI Design

Module #1
Page 17

VLSI Economy
Economy
- there are two general types of economy in VLSI
1) you are going to use the IC design in your own product you sell
2) you design and sell the individual IC
- both require a financial analysis that includes:
1)
2)
3)
4)
5)

upfront cost
engineering development cost
per piece cost
predicted monthly volume
predicted life span of product

- items 1,2, and 3 are deterministic


- items 4 and 5 are marketing best guesses and probably the most difficult thing to predict in
business

EELE 414 Introduction to VLSI Design

Module #1
Page 18

VLSI Economy
Economy Example of Using your IC
- your company is developing a product that will use a VLSI design. You are to choose which
implementation option is the best between a Custom ASIC, STD Cell ASIC, Gate Array, or FPGA
- in this case, all 4 of the implementation options meet the electrical specifications so it a simple
matter
of economy in selecting the best option
- the product that this IC goes into will ship in 24 months regardless of the development time of your
IC
(assuming it is done of course!)
- your marketing department thinks that you will sell 5,000 product per month and that the product
life cycle is 5 years (starting after the 24 months of development)
- you are given the following:
NRE Engineering

Per-Piece Cost

Custom ASIC $500k


4 engineers, 24 months, $15k/engr/mo $5.00
STD Cell ASIC $300k
4 engineers, 18 months, $15k/engr/mo $8.00
Gate Array
$200k
3 engineers, 12 months, $12k/engr/mo $11.00
FPGA
$0k 2 engineers, 9 months, $10k/engr/mo $16.00

EELE 414 Introduction to VLSI Design

Module #1
Page 19

VLSI Economy
Economy Example

EELE 414 Introduction to VLSI Design

Module #1
Page 20

VLSI Economy
Economy Considerations
Quantitative considerations for this example.
Answer
- Which options takes the most development?
ASIC
- If the product runs 5 years, which option is the most cost effective? ASIC
- What if the product only sells for 1 year?
FPGA
- What if the product only sells for 2 years?
Gate Array

EELE 414 Introduction to VLSI Design

Module #1
Page 21

VLSI Economy
Economy Considerations
Qualitative considerations for this example.
Idea
- If performance mattered, how could you justify doing a Custom ASIC?
for the product
- What if you are a small company and cant afford the NRE?
use an FPGA
- What is the danger of doing an FPGA?

You could charge more

You might be forced to

It might not take long for


a competitor to develop
the same thing if they
see you are successful
selling your product

EELE 414 Introduction to VLSI Design

Module #1
Page 22

VLSI Economy
Economy of Selling your IC
- if you design and sell your IC, you need a similar analysis.
- But now you need to consider
1) Profit Margin - for each IC sold, how much of that is gross profit versus the cost of
simply making the IC
2) Break Even Point - you invest upfront NRE and engineering time. The gross profit
from the first x ICs that you sell go toward paying off that investment.
The # of ICs and the time it takes to reach that point is called
Break Even
- If the product doesnt sell enough, you may not make enough to
pay for the initial development.
3) Opportunity Cost
- if you only have 5 skilled IC designers, you want to make sure they
are working on the most profitable product. If they are working on
product A then they cant be working on product B. If B is more
profitable, you are not using your resources effectively.

EELE 414 Introduction to VLSI Design

Module #1
Page 23

Digital Review
Combinational Logic
Combinational Logic Gates :
- Output depends on the logic value of the inputs
- no storage

EELE 414 Introduction to VLSI Design

Module #1
Page 24

Digital Review
NOT

out = in = in

f(in) = in = in

OR

out = a+b

f(a,b) = a+b

AND

out = ab

f(a,b) = ab

EELE 414 Introduction to VLSI Design

Module #1
Page 25

Digital Review
XOR

out = ab f(a,b) = ab

NOR

out = a+b

f(a,b) = a+b

NAND

out = ab

f(a,b) = ab

EELE 414 Introduction to VLSI Design

Module #1
Page 26

Digital Review
XNOR

out = ab

f(a,b) = ab

Also remember about XOR Gates:


f(a,b) = ab = (ab + ba)
Also remember the priority of logic operations (without parenthesis) is:
NOT, AND, OR

EELE 414 Introduction to VLSI Design

Module #1
Page 27

Digital Review
DeMorgans Theorems
-

Inverting the output of any gate results in the same function as the opposite
gate (AND/OR) with inverted inputs

EELE 414 Introduction to VLSI Design

Module #1
Page 28

Digital Review
DeMorgans Theorems
-

Graphically : breaking the bar changes the logic function (AND-OR) under the break

out = a+b
1) Break bar

out = a+b
2) Change + to under break

out = ab

EELE 414 Introduction to VLSI Design

Module #1
Page 29

Digital Review
Boolean Expressions Using SOP
-

Logic functions can be described using a Sum of Products techniques


Sum of Products (SOP) is the summation of all minterms resulting in the truth table
A minterm is the expression for an input configuration which yields a TRUE output
A minterm expression is the ANDing of the input "1" signal configuration

Truth Table
a b out
00 0
0 1 1 minterm m1 = ab
1 0 1 minterm m2 = ab
11 0
SOP Expression :

f(a,b) = ab + ab

Note : un-minimized Boolean expression


EELE 414 Introduction to VLSI Design

Module #1
Page 30

Digital Review
Boolean Expressions Using POS
-

Logic functions can be described using a Product of Sums techniques


Product of Sums (POS) is the multiplication of all maxterms resulting in the truth table
A maxterm is the expression for an input configuration which yields a FALSE output
A maxterm expression is the ORing of the input "0" signal configuration

Truth Table
a b out
0 0 0 maxterm m0 = a+b (input configuration of 0's)
01 1
10 1
1 1 0 maxterm m3 = a'+b' (input configuration of 0's)
POS Expression :

f(a,b) = (a+b) (a'+b')

EELE 414 Introduction to VLSI Design

Module #1
Page 31

Digital Review
Boolean Expressions Using SOP & POS
-

SOP and POS functions are equivalent

SOP Expression :

f(a,b) = ab + ab

is equal to

POS Expression :

f(a,b) = (a+b) (a'+b')

EELE 414 Introduction to VLSI Design

Module #1
Page 32

Digital Review
Karnaugh Maps
-

K-maps provide a graphical method to find SOP/POS expressions


K-maps also provide a graphical method to perform logic minimization
K-map SOP Process
1) Circle minterms to create SOP
2) Circle in Horizontal & Vertical manner
3) Circle in groups with powers of 2
(1,2,4,8,)

Truth Table
ab
00
01
10
11

out
0
1
1
1

a
0 1
b 0
1

No dependency on b, minterm = a
No dependency on a, minterm = b
SOP expression :

EELE 414 Introduction to VLSI Design

f(a,b) = a + b
Module #1
Page 33

Digital Review
Karnaugh Maps
-

K-maps provide a graphical method to find SOP/POS expressions


K-maps also provide a graphical method to perform logic minimization
K-map POS Process
1) Circle maxterms to create POS
2) Circle in Horizontal & Vertical manner
3) Circle in groups with powers of 2
(1,2,4,8,)

Truth Table
ab
00
01
10
11

out
0
1
1
1

a
0 1
b 0
1

Dependency on a' and b',

maxterm = a+b

POS expression :

f(a,b) = a + b

EELE 414 Introduction to VLSI Design

Module #1
Page 34

Digital Review
Sequential Logic
- Concept of Storage Element
- With Storage, logic functions can depend on current & past values of inputs
- Sequential State Machines can be created

D-Flip-Flop
- on timing event (i.e., edge of clock input), D input goes to Q output

CLK
D

D
Q

Q
Q
tc2q
EELE 414 Introduction to VLSI Design

Module #1
Page 35

Digital Review
State Machines
- Moore :
- Mealy :

Outputs depend on present state


Outputs depend on present state and current inputs

EELE 414 Introduction to VLSI Design

Module #1
Page 36

Digital Review
State Machine Example : Design a 2-bit Gray Code Counter

00
01

1) Number of States?
:4
2) Number of bits to encode states?
: 2n=4, n=2
3) Moore or Mealy?
: Moore

For this counter, we can make the outputs be the state codes

11
10

EELE 414 Introduction to VLSI Design

Module #1
Page 37

Digital Review
State Machine Example : Design a 2-bit Gray Code Counter

00
01
11

STATE
Current Next
Acur Bcur Anxt Bnxt
0
0
1
1

0
1
1
0

0
1
1
0

Anxt Logic

Bnxt Logic

Bcur
0 1
Acur 0
1

1
1
0
0

Bcur
0 1

Acur 0
1

10

A
B

Bnxt = Acur

Anxt = Bcur

counter
output

B
Q

CLK

EELE 414 Introduction to VLSI Design

Module #1
Page 38

You might also like