36
EE 4271 VLSI Design, Fall 2011 Combinational Circuits

EE 4271 VLSI Design, Fall 2011

Embed Size (px)

DESCRIPTION

EE 4271 VLSI Design, Fall 2011. Combinational Circuits. Overview. Combinational Circuit Chip Design styles Full-custom design Cell library based design Programmable Logic Array. Combinational Circuits. - PowerPoint PPT Presentation

Citation preview

Page 1: EE 4271 VLSI Design,  Fall 2011

EE 4271 VLSI Design, Fall 2011

Combinational Circuits

Page 2: EE 4271 VLSI Design,  Fall 2011

Overview

• Combinational Circuit• Chip Design styles– Full-custom design– Cell library based design– Programmable Logic Array

2023.04.19 Combinational Logic PJF- 2

Page 3: EE 4271 VLSI Design,  Fall 2011

Combinational Circuits• A combinational circuit consists of logic gates

whose outputs, at any time, are determined by combining the values of the inputs.

• For n input variables, there are 2n possible binary input combinations.

• For each binary combination of the input variables, there is one possible output.

2023.04.19 Combinational Logic PJF- 3

Page 4: EE 4271 VLSI Design,  Fall 2011

Combinational Circuits (cont.)• Hence, a combinational circuit can be described by:

1. A truth table that lists the output values for each combination of the input variables, or

2. m Boolean functions, one for each output variable.

2023.04.19 Combinational Logic PJF- 4

CombinationalCircuit

n-inputs m-outputs••• •••

Page 5: EE 4271 VLSI Design,  Fall 2011

Combinational vs. Sequential Circuits

2023.04.19 Combinational Logic PJF- 5

Combinational circuits are memory-less. Thus, the output value depends ONLY on the current input values.

Sequential circuits consist of combinational logic as well as memory elements (used to store certain circuit states). Outputs depend on BOTH current input values and previous input values (kept in the storage elements).

Page 6: EE 4271 VLSI Design,  Fall 2011

Combinational vs. Sequential Circuits

2023.04.19 Combinational Logic PJF- 6

CombinationalCircuit

n-inputs m-outputs(Depend only on inputs)

CombinationalCircuit

n-inputs

m-outputs

StorageElementsNext

statePresentstate

Sequential Circuit

Combinational Circuit

Page 7: EE 4271 VLSI Design,  Fall 2011

Important Design Concepts

• Modern digital design deals with various methods and tools that are used to design and verify complex circuits and systems.

• Concepts:– Design Hierarchy– Computer-Aided-Design (CAD) tools– Hardware Description Languages (HDLs)

2023.04.19 Combinational Logic PJF- 7

Page 8: EE 4271 VLSI Design,  Fall 2011

Design Hierarchy

• “Divide-and-Conquer” approach used to cope with the challenges of designing complex circuits and systems (many times in the order of millions of gates).

• Circuit is broken into blocks, repetitively.

2023.04.19 Combinational Logic PJF- 8

Page 9: EE 4271 VLSI Design,  Fall 2011

2023.04.19 Combinational Logic PJF- 9

Design Hierarchy Design Hierarchy Example: 9-input odd function (for counting # of 1 in Example: 9-input odd function (for counting # of 1 in

inputs)inputs)

Page 10: EE 4271 VLSI Design,  Fall 2011

Why is Hierarchy useful?

• Reduces the complexity required to design and represent the overall schematic of the circuit.

• Reuse of blocks is possible. Identical blocks can be used in various places in a design, or in different designs.

2023.04.19 Combinational Logic PJF- 10

Page 11: EE 4271 VLSI Design,  Fall 2011

Reusable Functions and CAD• Whenever possible, we try to decompose a complex design into

common, reusable function blocks• These blocks are

– verified and well-documented– placed in libraries for future use

2023.04.19 Combinational Logic PJF- 11

Page 12: EE 4271 VLSI Design,  Fall 2011

Integrated Circuits• Integrated circuit (a chip) is a semiconductor crystal (most

often silicon) containing the electronic components for the digital gates and storage elements which are interconnected on the chip.

• Terminology - Levels of chip integration– SSI (small-scale integrated) - fewer than 10 gates– MSI (medium-scale integrated) - 10 to 100 gates– LSI (large-scale integrated) - 100 to thousands of gates– VLSI (very large-scale integrated) - thousands to 100s of millions of

gates

2023.04.19 Combinational Logic PJF- 12

Page 13: EE 4271 VLSI Design,  Fall 2011

Technology Parameters• Specific gate implementation technologies are characterized by the

following parameters: – Fan-in – the number of inputs available on a gate– Fan-out – the number of standard loads driven by a gate output– Cost for a gate - a measure of the contribution by the gate to the cost of the

integrated circuit– Propagation Delay – The time required for a change in the value of a signal to

propagate from an input to an output– Power Dissipation – the amount of power drawn from the power supply and

consumed by the gate

2023.04.19 Combinational Logic PJF- 13

Page 14: EE 4271 VLSI Design,  Fall 2011

Propagation Delay• Propagation delay is the time for a change on an input of a gate to

propagate to the output.• Delay is usually measured at the 50% point with respect to the H and L

output voltage levels.• High-to-low falling and low-to-high rising delays.

2023.04.19 Combinational Logic PJF- 14

Page 15: EE 4271 VLSI Design,  Fall 2011

Propagation Delay Example

2023.04.19 Combinational Logic PJF- 15

IN (

volt

s)O

UT

(vo

lts)

t (ns)1.0 ns per division

Page 16: EE 4271 VLSI Design,  Fall 2011

Chip Design Styles• Full custom - the entire design of the chip down to the smallest detail of the layout

is performed– Expensive, its timing and power is hard to analyze– only for dense, fast chips with high sales volume

• Standard cell - blocks have been design ahead of time or as part of previous designs– Intermediate cost – Less density and speed compared to full custom

• Gate array - regular patterns of gate transistors that can be used in many designs built into chip - only the interconnections between gates are specific to a design– Lowest cost– Less density compared to full custom and standard cell– Prototype design– The base of FPGA

2023.04.19 Combinational Logic PJF- 16

Page 17: EE 4271 VLSI Design,  Fall 2011

Cell Libraries• Cell - a pre-designed primitive block• Cell library - a collection of cells available for design using

a particular implementation technology• Cell characterization - a detailed specification of a cell for

use by a designer

2023.04.19 Combinational Logic PJF- 17

Page 18: EE 4271 VLSI Design,  Fall 2011

Cell Library Based Design Procedure

1. Specification– Write a specification for the circuit if one is not already available

2. Formulation– Derive a truth table or initial Boolean equations that define the

required relationships between the inputs and outputs, if not in the specification

3. Optimization– Draw a logic diagram or provide a netlist for the resulting circuit

using ANDs, ORs, and inverters

2023.04.19 Combinational Logic PJF- 18

Page 19: EE 4271 VLSI Design,  Fall 2011

Cell Library Based Design Procedure

4. Technology Mapping– Map the logic diagram to the implementation

technology selected– Map to CMOS

5. Evaluation– Evaluate the timing and power

2023.04.19 Combinational Logic PJF- 19

Page 20: EE 4271 VLSI Design,  Fall 2011

Design Example1. Specification – BCD to Excess-3 code converter– Transforms BCD code for the decimal digits to Excess-3

code for the decimal digits– BCD code words for digits 0 through 9: 4-bit patterns 0000

to 1001, respectively– Excess-3 code words for digits 0 through 9: 4-bit patterns

consisting of 3 (binary 0011) added to each BCD code word

2023.04.19 Combinational Logic PJF- 20

Page 21: EE 4271 VLSI Design,  Fall 2011

Design Example (continued)2. Formulation

– Conversion of 4-bit codes can be most easily formulated by a truth table

– Variables- BCD: A,B,C,D

– Variables- Excess-3 W,X,Y,Z

– Don’t Cares- BCD 1010 to 1111

2023.04.19 Combinational Logic PJF- 21

Input BCD A B C D

Output Excess-3 WXYZ

0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 1 0 1 1 0 0 0 0 1 1 0 1 0 0 1 0 1 1 1 1 0 1 0 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1

Page 22: EE 4271 VLSI Design,  Fall 2011

Design Example (continued)

3. Optimizationa. K-maps

W = A + BC + BDX = C + D + BY = CD + Z =

2023.04.19 Combinational Logic PJF- 22

B

C

D

A

0 1 3 2

4 5 7 6

12 13 15 14

8 9 11 10

1

11

1

X X X

X X

X

1

B

C

D

A

0 1 3 2

4 5 7 6

12 13 15 14

8 9 11 10

1

11

1

X X X

X X

X

1

B

C

D

A

0 1 3 2

4 5 7 6

12 13 15 14

8 9 11 10

1 1

1

1

X X X

X X

X

1

B

C

D

A

0 1 3 2

4 5 7 6

12 13 15 14

8 9 11 10

1 1

1

X X X

X X

X

1

1

w

z y

xB CDB

CD

D

Page 23: EE 4271 VLSI Design,  Fall 2011

Design Example (continued)

3. Optimization (continued) Multiple-level using transformations

W = A + BC + BDX = C + D + BY = CD + Z =

– Perform extraction, finding factor: T1 = C + D

W = A + BT1 X = T1 + BY = CD + Z =

2023.04.19 Combinational Logic PJF- 23

B CDBCD

D

B C DCD

D

Page 24: EE 4271 VLSI Design,  Fall 2011

Design Example (continued)4. Technology Mapping

Map with a library containing inverters and 2-input NAND, and then map it to a CMOS based circuit

2023.04.19Combinational Logic

Z

A

B

CD

W

X

Y

Z

Page 25: EE 4271 VLSI Design,  Fall 2011

Technology Mapping Example

2023.04.19 Combinational Logic PJF- 25

A

B

C

D

F

E

(a)

AB

C7

5

1

6

2

4

9

X

Y

38DE

F

(b)

AB

C

D

E

F

(d)

X

5

5

7

6Y

(c)

OI

Page 26: EE 4271 VLSI Design,  Fall 2011

Timing Analysis

• Use static timing analysis which has been covered.

2023.04.19 Combinational Logic PJF- 26

Page 27: EE 4271 VLSI Design,  Fall 2011

Transmission Gate Based Design - Multiplexer

• “Selects” binary information from one of many input lines and directs it to a single output line.

• Also know as the “selector” circuit,• Selection is controlled by a particular set of inputs

lines whose # depends on the # of the data input lines.

• For a 2n-to-1 multiplexer, there are 2n data input lines and n selection lines whose bit combination determines which input is selected.

Apr 19, 2023 Combinational Logic PJF - 27

Page 28: EE 4271 VLSI Design,  Fall 2011

Apr 19, 2023 Combinational Logic PJF - 28

Multiplexer (cont.)Multiplexer (cont.)

Page 29: EE 4271 VLSI Design,  Fall 2011

2-to-1-Line Multiplexer

• Since 2 = 21, n = 1• The single selection variable S has two values:

– S = 0 selects input I0

– S = 1 selects input I1

• The equation: Y = S’ I0 + SI1

• The circuit:

Apr 19, 2023 Combinational Logic PJF - 29

S

I0

I1

DecoderEnablingCircuits

Y

Page 30: EE 4271 VLSI Design,  Fall 2011

Example: 4-to-1 MUX - Cell Library Based Design

Apr 19, 2023 Combinational Logic PJF - 30

Page 31: EE 4271 VLSI Design,  Fall 2011

Apr 19, 2023 Combinational Logic PJF - 31

4–to–1-Line Multiplexer using Transmission Gates

Page 32: EE 4271 VLSI Design,  Fall 2011

MUX as a Universal Gate• We can construct AND and NOT gates using 2-to-1

MUXs. Thus, 2-to-1 MUX is a universal gate.

Apr 19, 2023 PJF - 32Combinational Logic

z = 0x + 1x’ = x’z = 0x + 1x’ = x’ z = xz = x11xx00 + 0x + 0x00’ = x’ = x11xx00

Page 33: EE 4271 VLSI Design,  Fall 2011

Programmable Logic Array• The set of functions to be implemented is first transformed to product

terms• Since output inversion is available, terms can implement either a function

or its complement

Apr 19, 2023 Combinational Logic PJF - 33

Page 34: EE 4271 VLSI Design,  Fall 2011

Programmable Logic Array Example

• To implement– F1= A’B’C+A’BC’+AB’C’=(AB+AC+BC+A’B’C’)’– F2=AB+AC+BC

Apr 19, 2023 Combinational Logic PJF - 34

Page 35: EE 4271 VLSI Design,  Fall 2011

Programmable Logic Array Example

Apr 19, 2023 Combinational Logic PJF - 35

XFuse intactFuse blown

01

F1

F2

A

B

C

C B AC B A

1

2

4

3

X X

X X

X X

X XX

X

X

X X

X

X

X

X

X

Page 36: EE 4271 VLSI Design,  Fall 2011

Summary

• Three design styles– Full custom design– Gate library based design– PLA based design

• Transmission gate based design

2023.04.19 Combinational Logic PJF- 36