Robust Window-based Multi-node Technology- Independent Logic Minimization Jeff L.Cobb Kanupriya...

Post on 28-Mar-2015

216 views 4 download

Tags:

Transcript of Robust Window-based Multi-node Technology- Independent Logic Minimization Jeff L.Cobb Kanupriya...

Robust Window-based Robust Window-based Multi-node Technology-Multi-node Technology-

Independent Logic Independent Logic MinimizationMinimization

Jeff L.Cobb

Kanupriya Gulati Sunil P. Khatri

Texas Instruments, Inc. Dept. of ECE, Texas A&M University

1

Overview

IntroductionBackgroundPrevious workApproachExperimental resultsConclusions

2

Introduction

VLSI design flow◦HDL (Verilog, VHDL)◦Logic optimization◦Physical design

3

Introduction

Purpose of logic optimization◦Reduce area◦Reduce power◦Reduce delay

Logic optimization◦Technology-independent optimization

◦Goal: reduce literal count◦Technology-dependent optimization

4

BackgroundDon’t Cares

◦Logic function allowed to have 0 or 1 as possible output for a given input

ODC SDC

◦XDC: External don’t cares given5

BackgroundDon’t Cares

◦Computed for one node at a time◦Cannot capture multi-node flexibility

6

xy (x+y) = xy(xy) + (x+y)(x+y) = xy+xy = x y

Goal: multi-node logic minimization◦Yields a Boolean relation◦Need to determinize this relation for solution

BackgroundBoolean relations

◦Can express more than one allowed output vector for a single input vector

◦Don’t cares only express flexibility for a single output

7

Terminology

8

Problem Definition

9

• Implement dual-node Boolean relation-based multi-level logic minimization technique

•Goals: • Method must scale to large designs• Compare to best don’t care-based method

(single-node)

Previous Work

10

• [CM77] Formulated multi-node minimization problem• No results provided

• [WW94] Multi-node minimization• Extremely large runtimes, works on very

small designs• [MB05] Single node approach, uses windowing and SAT based formulation• Used for comparison purposes

• This work: Efficient choice of nodes, window based, efficient quantification scheduling

Approach

Key featuresDual node optimizationCareful node pair selectionWindow based optimization techniqueEarly quantification for efficiency

11

Approach

12

Node Pair Selection

Node Pair Selection

13

Node Pair Selection

14

Node Pair Selection

15

Node Pair Selection• Compute common input ratio

• Compute common output ratio

• Select node pairs that satisfy

16

Subnetwork Extraction

17

Subnetwork Extraction

18

Building the Relation

where

19

),...,,...,(),...,,...,(),...,,...,( 111 nixnixnix xxxfxxxfxxxfiii

Quantification Scheduling

20

Quantification Scheduling

21

Quantification Scheduling

22

Call BREL (a Boolean relation minimizer) to minimize

Returns new nodes and

Graft new nodes into

Delete original nodes

,

Endgame

23

BREL

24

• BREL is a heuristic Boolean relation solver

• Solving a Boolean relation • Same as minimum cost determinization of

the relation (i.e. finding the lowest cost function which is contained in the relation)

• Branch and bound approach

Experimental ResultsImplemented in SISUses CUDD ROBDD Package15 benchmark circuits from mcnc91, itc99Metric for quality: literal countPreprocessing steps:

Removes constant-valued nodesRemoves nodes that do not fanout

Merges functionally identical nodes

25

Experimental Results

Parameter selection

4 parameters to node selection algorithm

Goal: Find “golden” values

26

Experimental ResultsParameter:

27

Experimental ResultsParameters:

: Window size

: Partners for

28

Experimental Results

29

Experimental ResultsParameter:

30

Experimental Results

“Golden” parameter values:

Can be modified to balance quality/runtime

31

Experimental Results Compared versus

12% lit. improvement

38x runtime increase But runtimes are still within 3-4 min

Low memory (#BDD nodes)

High gain (number of node pairs which givean improvement)

32

Experimental Results Run after

13% lit. improvement

Both use 2x2 windows

33

Experimental ResultsLimit subnetwork size τ

34

Conclusions12% less literals than best DC approachRuntimes under 4 minutes for largest networkLow memory usageFurther reduce literals by 13% after running best

DC approach

Future WorkConsider 3+ nodes in relationSAT-based relation constructionAlternative to BREL

35

36

Thank you!

37

SAT-Sweep

38

BREL

39

BREL