SPFD-Based Wire Removal in a Network of PLAs Sunil P. Khatri* Subarnarekha Sinha* Andreas Kuehlmann** Robert K. Brayton* Alberto Sangiovanni-Vincentelli*

Slides:



Advertisements
Similar presentations
Global Flow Optimization (GFO) in Automatic Logic Design “ TCAD91 ” by C. Leonard Berman & Louise H. Trevillyan CAD Group Meeting Prepared by Ray Cheung.
Advertisements

Programmable Logic Devices
1 SPFDs - A new method for specifying flexibility Sets of Pairs of Functions to be Distinguished From the paper: “A new Method to Express Functional Permissibilities.
ECE 667 Synthesis and Verification of Digital Systems
A Robust Algorithm for Approximate Compatible Observability Don’t Care (CODC) Computation Nikhil S. Saluja University of Colorado Boulder, CO Sunil P.
ECE Synthesis & Verification - Lecture 8 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Introduction.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day10: October 25, 2000 Computing Elements 2: Cascades, ALUs,
Reducing Multi-Valued Algebraic Operations to Binary J.-H. Roland Jiang Alan Mishchenko Robert K. Brayton Dept. of EECS University of California, Berkeley.
1 Multi-Valued Logic Synthesis R. K. Brayton and S. P. Khatri University of California Berkeley.
Towards SPFD-based Technology Mapping Algorithm Alan Mishchenko Portland State University October 17, 2000.
1 Generalized Buffering of PTL Logic Stages using Boolean Division and Don’t Cares Rajesh Garg Sunil P. Khatri Department of Electrical and Computer Engineering,
Optimal Layout of CMOS Functional Arrays ECE665- Computer Algorithms Optimal Layout of CMOS Functional Arrays T akao Uehara William M. VanCleemput Presented.
Multi-Valued Logic Network Optimizations EE219B Project Presentation Jason Shamberger May 16, 2000.
Graph Coloring Algorithms for Fast Evaluation of Curtis Decomposition Marek Perkowski, Rahul Malvi, Stan Grygiel, Mike Burns, and Alan Mishchenko Portland.
EE290A 1 Retiming of AND- INVERTER graphs with latches Juliet Holwill 290A Project 10 May 2005.
Nov. 13, 2002ICCAD 2002 Simplification of Non-Deterministic Multi-Valued Networks Alan Mishchenko Electrical and Computer Engineering Portland State University.
Rewiring – Review, Quantitative Analysis and Applications Matthew Tang Wai Chung CUHK CSE MPhil 10/11/2003.
DAG-Aware AIG Rewriting Alan Mishchenko, Satrajit Chatterjee, Robert Brayton Department of EECS, University of California Berkeley Presented by Rozana.
A Probabilistic Method to Determine the Minimum Leakage Vector for Combinational Designs Kanupriya Gulati Nikhil Jayakumar Sunil P. Khatri Department of.
01/27/2005 Combinationality of cyclic definitions EECS 290A – Spring 2005 UC Berkeley.
1 A Deep Sub-Micron VLSI Design Flow using Layout Fabrics Sunil P. Khatri University of Colorado, Boulder Amit Mehrotra University of Illinois, Urbana-Champaign.
Sept. 19, 2002Workshop on Boolean Problems A Theory of Non-Deterministic Networks R. K. Brayton EECS Dept. University of California Berkeley.
03/08/2005 © J.-H. Jiang1 Retiming and Resynthesis EECS 290A – Spring 2005 UC Berkeley.
Optimality Study of Logic Synthesis for LUT-Based FPGAs Jason Cong and Kirill Minkovich VLSI CAD Lab Computer Science Department University of California,
FPGA Technology Mapping. 2 Technology mapping:  Implements the optimized nodes of the Boolean network to the target device library.  For FPGA, library.
Applying Edge Partitioning to SPFD's 1 Applying Edge Partitioning to SPFD’s 219B Project Presentation Trevor Meyerowitz Mentor: Subarna Sinha Professor:
PLACEMENT USING DON’T CARE WIRES Fan Mo Don’t Care Wire Group: P.Chong, Y-J.Jiang, S.Singha and R.K.Brayton.
March 20, 2007 ISPD An Effective Clustering Algorithm for Mixed-size Placement Jianhua Li, Laleh Behjat, and Jie Huang Jianhua Li, Laleh Behjat,
Graph Coloring. Introduction When a map is colored, two regions with a common border are customarily assigned different colors. We want to use a small.
05/04/06 1 Integrating Logic Synthesis, Tech mapping and Retiming Presented by Atchuthan Perinkulam Based on the above paper by A. Mishchenko et al, UCAL.
1 EECS 219B Spring 2001 Timing Optimization Andreas Kuehlmann.
Area and Speed Oriented Implementations of Asynchronous Logic Operating Under Strong Constraints.
Combinational and Sequential Mapping with Priority Cuts Alan Mishchenko Sungmin Cho Satrajit Chatterjee Robert Brayton UC Berkeley.
Kuo-Hua Wang, Chung-Ming Chan, Jung-Chang Liu Dept. of CSIE Fu Jen Catholic University Slide: Chih-Fan Lai Simulation and SAT-Based Boolean Matching for.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Lecture 6: Mapping to Embedded Memory and PLAs September 27, 2004 ECE 697F Reconfigurable Computing Lecture 6 Mapping to Embedded Memory and PLAs.
Why consider ND-MV networks? Multi-Values: Multi-valued domains can be used to explore larger optimization spaces. Several interesting direct applications.
1 Stephen Jang Kevin Chung Xilinx Inc. Alan Mishchenko Robert Brayton UC Berkeley Power Optimization Toolbox for Logic Synthesis and Mapping.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Multi-Level Logic Synthesis.
Output Grouping Method Based on a Similarity of Boolean Functions Petr Fišer, Pavel Kubalík, Hana Kubátová Czech Technical University in Prague Department.
FPGA Logic Cluster Design Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
1 WireMap FPGA Technology Mapping for Improved Routability Stephen Jang, Xilinx Inc. Billy Chan, Xilinx Inc. Kevin Chung, Xilinx Inc. Alan Mishchenko,
A Semi-Canonical Form for Sequential Circuits Alan Mishchenko Niklas Een Robert Brayton UC Berkeley Michael Case Pankaj Chauhan Nikhil Sharma Calypto Design.
Global Delay Optimization using Structural Choices Alan Mishchenko Robert Brayton UC Berkeley Stephen Jang Xilinx Inc.
Reducing Structural Bias in Technology Mapping
Finite state machine optimization
Finite state machine optimization
Power Optimization Toolbox for Logic Synthesis and Mapping
Alan Mishchenko UC Berkeley
Mapping into LUT Structures
Delay Optimization using SOP Balancing
Alan Mishchenko Satrajit Chatterjee Robert Brayton UC Berkeley
A Semi-Canonical Form for Sequential AIGs
Integrating an AIG Package, Simulator, and SAT Solver
A Boolean Paradigm in Multi-Valued Logic Synthesis
Standard-Cell Mapping Revisited
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
SAT-Based Optimization with Don’t-Cares Revisited
Robert Brayton UC Berkeley
ECE 667 Synthesis and Verification of Digital Systems
Alan Mishchenko UC Berkeley (With many thanks to Donald Knuth,
Alan Mishchenko UC Berkeley (With many thanks to Donald Knuth for
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
Integrating an AIG Package, Simulator, and SAT Solver
Improvements in FPGA Technology Mapping
Delay Optimization using SOP Balancing
Robert Brayton Alan Mishchenko Niklas Een
Fast Min-Register Retiming Through Binary Max-Flow
Robert Brayton Alan Mishchenko Niklas Een
Integrating AIG Package, Simulator, and SAT Solver
Presentation transcript:

SPFD-Based Wire Removal in a Network of PLAs Sunil P. Khatri* Subarnarekha Sinha* Andreas Kuehlmann** Robert K. Brayton* Alberto Sangiovanni-Vincentelli* * UC Berkeley CAD Group ** IBM Research

Outline u Motivation u Network of PLAs u Multi-valued SPFDs u Wire Removal using SPFDs u Experimental Results u Conclusions and Further Work

Motivation u PLAs being rediscovered in DSM design u IBM Gigahertz processor u Single PLAs used for control circuitry u High performance u Ability to quickly modify circuit u Circuit implementation using network of PLAs u Crosstalk-immune u Low area overhead u High performance

Network of PLAs u Utilize medium-sized PLAs u 5-10 inputs, 5-10 outputs u product terms u Several advantages u Each PLA is fast and compact u Immunity from cross-talk u Decompose circuit into such a network u Overall area overhead minimal

Network of PLAs..2 u Decompose netlist into a network of PLAs u Algorithm attempts to reduce wiring between PLAs u Each cluster is tested for size by minimizing and folding the PLA a g f d b c e

Network of PLAs..3 u Each PLA implements 10’s of standard cells

SPFDs u Sets of Pairs of Functions to be Distinguished (SPFDs) u Introduced by Yamashita in ICCAD96 u Context of FPGA design u Modified by Brayton in IWLS97 for use in logic networks u Introduced SPFDs for node simplification u SPFD based wire removal/replacement introduced in ICCAD98 u Selectively removing/replacing wires in the logic to decrease logic complexity

Multi-valued SPFDs u An SPFD F(y) on a domain Y  undirected graph (V, E) where each v  V corresponds to a unique minterm in Y.  An edge e = (v 1, v 2 )  E means that minterms v 1 and v 2 should have different functional values y y y y y y y y y0y0 y1y1 y2y2 y3y3 y4y4 y5y5 y6y6 y7y7

Multi-valued SPFDs..2 u A function F(y) implements F = (V, E) if F(y) is a valid coloring of F, ie F(y 1 ) != F(y 2 ), (y 1, y 2 )  E u Chromatic number of an SPFD is the minimum number of values required to implement the SPFD

Binary SPFD-based Wire Removal y y y y y y y y f a b c y y y y y y y y y y y y y y y y y y y y y y y y y0y0 y1y1 y2y2 y3y3 y4y4 y5y5 y6y6 y7y7 Logicfunction

Binary SPFD-based Wire Removal..2 u Current algorithm uses CODCs to block effect of changes CODC CODC CODC Node change propagation is limited to red nodes f b a c

Binary SPFD-based Wire Removal Algorithm Y X Consider node h. SPFD of h is h(Y) Remove g 2 to get new space Y = Y - g 2 g 1 and g 3 now re-implemented Project h(Y) to PI space, call this projection H(X) ^ Project H(X) back to Y space, to get h(Y), the new SPFD of h ^ ^ ^ h g1g1g1g1 g2g2g2g2 g3g3g3g3 Now implement new h based on h(Y) ^ ^

Faster Binary SPFD-based Wire Removal Algorithm Y X Consider node h. SPFD of h is h(Y) Instead, project h(Y) to an intermediate space Z, call this projection H(Z) h g1g1g1g1 g2g2g2g2 g3g3g3g3 Z Need not project h(Y) to PI space ! Potentially suboptimal results, but much higher efficiency Remaining computation as described in previous slide

Wire Removal for Network of PLAs u PLAs can be viewed as MV nodes u PLA network has a few outputs of high fanout u Compute MV-SPFDs of the fanout PLAs u Try to remove the target output wire block u Don’t block changes by don’t-cares of fanout u Fanout PLAs can be easily re-implemented h 1, h 2, h 3 g2g2g2g2 g1g1g1g1 g2g2g2g2 g1g1g1g1 H (multi-valued) H g2g2g2g2 g1g1g1g1

MVSPFD-based Wire Removal y y y y y y y y f a b c y y y y y y y y y y y y y y y y y y y y y y y y y0y0 y1y1 y2y2 y3y3 y4y4 y5y5 y6y6 y7y7 MV-function

Experimental Results - Standard Cell u Use binary SPFDs u Try to assign SPFD edges to a selected subset of fanin nodes u If any remaining fanins have no SPFD edges, they can be removed u Sweep the network after fanin wire is removed u 20% wire reduction at the logic level u Now perform technology mapping into a Standard-cell based implementation

Experimental Results - Standard Cell u Benefits at logic level negated at physical level u Technology mapping negates these benefits u Could perform wire removal after technology mapping u But logic nodes are too simple u SPFD based wire removal results in very little improvement u But the situation is different for a network of PLAs u No technology mapping step u Hence wire removal benefits got at physical level too

Experimental Results - Network of PLAs Decompose script.rugged run WR

Conclusions and Further Work u Binary SPFD based wire removal u Not helpful for standard cell based design u Extremely effective for network of PLAs u Implement MVSPFD based wire removal u Expect improvements for network of PLAs u Changes don’t need to be blocked by CODCs of fanout nodes u Nodes are complex, so flexibility is large u Initial coding underway