• 검색 결과가 없습니다.

Rule-Based Technology Mapping

N/A
N/A
Protected

Academic year: 2022

Share "Rule-Based Technology Mapping"

Copied!
20
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

(4541.554 Introduction to Computer-Aided Design)

School of EECS

Seoul National University

(2)

Technology Mapping Problem

process begin

wait until rising_edge(CLOCK);

if (SRST=‘0’) then DOUT1 <= ‘0’;

else

DOUT1 <= DIN1 nand DIN2;

end if;

DOUT2 <= SRST and (DIN1 nand DIN2);

end process;

FD1

DOUT2

CLOCK

FD1

DOUT1

SRST DIN1 DIN2 SRST

DIN1 DIN2

SRST DIN1 DIN2

FD1

DOUT2

CLOCK

FD1

DOUT1 logic synthesis

technology mapping

(3)

Problem

Given

Netlist

Library of components

Performance goals (area, speed)Find

Best implementation w.r.t. performance goals

Methods

Rule-based: LSS, SOCRATES

Algorithmic (graph covering): DAGON, MIS

(4)

Rule-Based Technology Mapping

SOCRATES

Synthesis and Optimization of Combinatorics using a Rule-based And Technology-independent Expert

System

A. J. de Geus and W. Cohen, "A Rule Based System for Optimizing Combinational Logic," IEEE Design & Test of Computers, Aug. 1985.

System Description

comparator

weak division two->multi

flattener multi->two

synthesis eq.->AND/OR/INV

extractor minimizer

Espresso

optimizer

schematic generator

rules rule

entry

Boolean

netlist

PLA

(5)

Design Scenario

existing netlist

Boolean functions

minimal functions

minimal functions with common terms

netlist

optimized netlist

extract

minimize (two-level)

weak divide (multi-level)

synthesize

optimize (technology mapping)

(6)

Technology Mapping

A series of local transformations based on rulesExample rules:

a b

slow a

b slow

(7)

Main Operations

Matching: Find a number of rules that apply to the present network

Cost function evaluation: For each potential rule

application, a cost function is computed to determine the quality of the resulting circuit

Selection: Decide which rule should be appliedReplacement: Perform network transformation by

applying the selected rule

size 11

size 9 size: # of tr. pairs patterns

target

replacement

(8)

Search Strategies

State space search problemGreedy algorithm

Order rules in the knowledge base.

do {

for each rule R { for each gate G {

if rule R matches at gate G if cost improves

apply_rule (R, G) }

}

} while improving --> local minimum

(9)

size 11

size 9

size 11

size 9

size 7

(10)

Look-ahead strategy

Search tree

Complexity of the search complexity = breadthdepth breadth = #gates * #rules ex) 100 gates,

20 rules,

look-ahead two rule applications

--> branching factor b = 100*20 = 2,000 depth d = 2

--> complexity = 2,0002 = 4,000,000 --> prune the tree

...

...

depth

breadth

(11)

Limit to first B applicable rules

Limit the depth to D

--> rule application depth = Dapp

Limit the size of the neighborhood

--> only search mutually exclusive transformationsMetarules

Look-ahead is more useful in later phases --> Dynamically vary parameters

(12)

Rule Entry

Two netlists are extracted and compared

comparator

weak division two->multi

flattener multi->two

synthesis eq.->AND/OR/INV

extractor minimizer

Espresso

optimizer

schematic generator

rules rule

entry

Boolean

netlist

PLA

(13)

Graph Covering

DAGON

K. Keutzer, "DAGON: technology binding and local optimization by DAG matching," Proc. 24th Design Automation Conference, 1987

Problem

Given

Boolean network (represented by a DAG)

Library (each cell is a DAG with a cost)

Find minimal cost covering of the Boolean network

Requires DAG matching (NP-complete)

(14)

Simplification

Represent a network by a forest by partitioning DAGPartitioning

If a node has fanout greater than one, cut the graph there

Gate with fanout>1 becomes a rootComplexity of the partitioning: linearRepresent library cells by trees

Use canonical forms: NANDs and NOTsMatch trees by trees

Dynamic programming for finding a minimal cost match

(15)

Tree Matching

Compute all matching at each nodeSelect best matching (depth-first)

Leaf: Cost of a NAND or a NOT

Internal node: Cost of matching tree + cost of sub-treesExample

ND2(3)

ND2(6) INV(2)

ND2(11) AOI21(7) cost(INV)=2

cost(NAND)=3 cost(AOI21)=4

without AOI21:

cost at A=11+2=13 with AOI21:

cost at A=3+4=7 A

(16)

Weak Points

Partitioning network into trees --> local optimum

Representing cells by trees

--> No way of representing XORs with a tree

(17)

Technology Mapping for FPGAs

• LUT-based FPGA

– Mapping

Boolean network Mapping to 5-input LUTs

(18)

– Decomposition

Without decomposition 4 LUTs

With decomposition 2 LUTs

(19)

Reconvergent paths realized within one LUT

(20)

– Replication of logic

Without replicated logic 3 LUTs

With replicated logic 2 LUTs

참조

관련 문서

“Evaluation of R&amp;D investments in wind power in Korea using real option.” Renewable and Sustainable Energy Reviews. &#34;Real Option Valuation of a Wind Power Project Based

Pitas, &#34;Minimum Class Variance Extreme Learning Machine for Human Action Recognition,&#34;IEEE Transactions on Circuits and Systems for Video Technology,

[16] Vivien Rossi and Jean-Pierre Vila, &#34;Bayesian Multioutput Feedforward Neural Networks Comparison: A Conjugate Prior Approach,&#34; IEEE TRANSACTIONS ON NEURAL NETWORKS,

&#34;APTEEN: A hybrid Protocol for Efficient Rout ing and Comprehensive Information Retrieval in Wireless Sensor Net works,&#34; IEEE Proc.. Heizelman et

based stereo stereo stereo algorithm,&#34; stereo algorithm,&#34; algorithm,&#34; algorithm,&#34; IEEE IEEE IEEE IEEE Transactions Transactions Transactions

[r]

단, 채용 예정분야가 속한 학과의 전임교원의 수가 3인

강원도립대학교 창의혁신커뮤니티센터 운영 규정 일부를 다음과 같이 개정한다...