A New Logic Synthesis, ExorBDS

Slides:



Advertisements
Similar presentations
Address comments to FPGA Area Reduction by Multi-Output Sequential Resynthesis Yu Hu 1, Victor Shih 2, Rupak Majumdar 2 and Lei He 1 1.
Advertisements

New Ways of Generating Large Realistic Benchmarks for Testing Synthesis Tools Petr Fišer, Jan Schmidt Faculty of Information Technology Czech Technical.
Figure 4.1. The function f (x1, x2, x3) =  m(0, 2, 4, 5, 6).
A Survey of Logic Block Architectures For Digital Signal Processing Applications.
FPGA Latency Optimization Using System-level Transformations and DFG Restructuring Daniel Gomez-Prado, Maciej Ciesielski, and Russell Tessier Department.
Combinational Logic and Verilog. XORs and XNORs XOR.
DSD 2007 Concurrent Error Detection for FSMs Designed for Implementation with Embedded Memory Blocks of FPGAs Andrzej Krasniewski Institute of Telecommunications.
Architecture Design Methodology. 2 The effects of architecture design on metrics:  Area (cost)  Performance  Power Target market:  A set of application.
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,
A High Performance Application Representation for Reconfigurable Systems Wenrui GongGang WangRyan Kastner Department of Electrical and Computer Engineering.
The Spartan 3e FPGA. CS/EE 3710 The Spartan 3e FPGA  What’s inside the chip? How does it implement random logic? What other features can you use?  What.
Logic Synthesis for Programmable Devices Onur Bay & Debatosh Debnath
1 Synthesis For CMOS/PTL Circuits Congguang Yang Maciej Ciesielski Dept. of Electrical & Computer Engineering University of Massachusetts, Amherst Sponsored.
Optimality Study of Logic Synthesis for LUT-Based FPGAs Jason Cong and Kirill Minkovich VLSI CAD Lab Computer Science Department University of California,
Introduction to FPGA’s FPGA (Field Programmable Gate Array) –ASIC chips provide the highest performance, but can only perform the function they were designed.
Logic Decomposition ECE1769 Jianwen Zhu (Courtesy Dennis Wu)
Philip Brisk 2 Paolo Ienne 2 Hadi Parandeh-Afshar 1,2 1: University of Tehran, ECE Department 2: EPFL, School of Computer and Communication Sciences Efficient.
Ch.9 CPLD/FPGA Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
Enhancing FPGA Performance for Arithmetic Circuits Philip Brisk 1 Ajay K. Verma 1 Paolo Ienne 1 Hadi Parandeh-Afshar 1,2 1 2 University of Tehran Department.
High-Level Interconnect Architectures for FPGAs Nick Barrow-Williams.
SHA-3 Candidate Evaluation 1. FPGA Benchmarking - Phase Round-2 SHA-3 Candidates implemented by 33 graduate students following the same design.
J. Christiansen, CERN - EP/MIC
FPGA (Field Programmable Gate Array): CLBs, Slices, and LUTs Each configurable logic block (CLB) in Spartan-6 FPGAs consists of two slices, arranged side-by-side.
VHDL Project Specification Naser Mohammadzadeh. Schedule  due date: Tir 18 th 2.
THE TESTING APPROACH FOR FPGA LOGIC CELLS E. Bareiša, V. Jusas, K. Motiejūnas, R. Šeinauskas Kaunas University of Technology LITHUANIA EWDTW'04.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Design Space Exploration for Application Specific FPGAs in System-on-a-Chip Designs Mark Hammerquist, Roman Lysecky Department of Electrical and Computer.
Han Liu Supervisor: Seok-Bum Ko Electrical & Computer Engineering Department 2010-Feb-2.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
Introduction to FPGAs Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
Background Motivation Implementation Conclusion 2.
On Logic Synthesis of Conventionally Hard to Synthesize Circuits Using Genetic Programming Petr Fišer, Jan Schmidt Faculty of Information Technology, Czech.
Timing-Driven Routing for FPGAs Based on Lagrangian Relaxation
Introduction to FPGA Tools
ATS Exploiting Free LUT Entries to Mitigate Soft Errors in SRAM- based FPGAs Keheng Huang, Yu Hu, Xiaowei Li Institute of Computing Technology Chinese.
1 Synthesizing Datapath Circuits for FPGAs With Emphasis on Area Minimization Andy Ye, David Lewis, Jonathan Rose Department of Electrical and Computer.
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.
Optimality Study of Logic Synthesis for LUT-Based FPGAs Jason Cong and Kirill Minkovich.
1 Area-Efficient FPGA Logic Elements: Architecture and Synthesis Jason Anderson and Qiang Wang 1 IEEE/ACM ASP-DAC Yokohama, Japan January 26-28,
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
In-Place Decomposition for Robustness in FPGA Ju-Yueh Lee, Zhe Feng, and Lei He Electrical Engineering Dept., UCLA Presented by Ju-Yueh Lee Address comments.
Circuit Minimization.
Output Grouping-Based Decomposition of Logic Functions Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University.
Routing Wire Optimization through Generic Synthesis on FPGA Carry Hadi P. Afshar Joint work with: Grace Zgheib, Philip Brisk and Paolo Ienne.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
1 Architecture of Datapath- oriented Coarse-grain Logic and Routing for FPGAs Andy Ye, Jonathan Rose, David Lewis Department of Electrical and Computer.
Fault-Tolerant Resynthesis for Dual-Output LUTs Roy Lee 1, Yu Hu 1, Rupak Majumdar 2, Lei He 1 and Minming Li 3 1 Electrical Engineering Dept., UCLA 2.
Presenter: Darshika G. Perera Assistant Professor
Floating-Point FPGA (FPFPGA)
IPF: In-Place X-Filling to Mitigate Soft Errors in SRAM-based FPGAs
The Analysis of Cyclic Circuits with Boolean Satisfiability
MAPLD 2005 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan Dr. V. Kamakoti.
XILINX FPGAs Xilinx lunched first commercial FPGA XC2000 in 1985
Technology Mapping into General Programmable Cells
ECE 4110–5110 Digital System Design
Mapping into LUT Structures
Delay Optimization using SOP Balancing
Andy Ye, Jonathan Rose, David Lewis
Versatile SAT-based Remapping for Standard Cells
Verilog to Routing CAD Tool Optimization
King Fahd University of Petroleum and Minerals
Analytical Approach for Soft Error Rate Estimation of SRAM-Based FPGAs
Sungho Kang Yonsei University
FPGA Glitch Power Analysis and Reduction
MDE based FPGA physical Design Fast prototyping with Smalltalk
Off-path Leakage Power Aware Routing for SRAM-based FPGAs
Design of Digital Circuits Lab 5 Supplement: Implementing an ALU
Delay Optimization using SOP Balancing
Digital Designs – What does it take
CprE / ComS 583 Reconfigurable Computing
Presentation transcript:

A New Logic Synthesis, ExorBDS Kelsey Muma Department of Electrical Engineering, University of Saskatchewan Seok-Bum Ko ExorBDS

A New Logic Synthesis, ExorBDS Outline Introduction Background ExorBDS Experimental Method and Results Conclusions ExorBDS

Introduction FPGAs Useful for rapid prototyping Excellent re-programmability features Higher cost/logic than ASICs Cannot be as efficient when also trying to be programmable ExorBDS

Introduction Commercial EDA tools provide technology-independent minimization, followed by technology-dependent mapping We believe current EDA tools sub-optimal, particularly for XOR-intensive functions (maybe others as well) ExorBDS

Background Parity Prediction Circuits Basic error checking method Prediction circuit involves XORing all outputs to determine expected parity bit ExorBDS

Background Overview of Xilinx Virtex II Pro Experimental results based on this FPGA (XC2VP2) Contains CLBs Each CLB contains 4 slices Each slice contains 2 4-input LUT 4-LUT: used for comparing methods ExorBDS

ESOP-minimization Often requires fewer product terms/literals than traditional SOP minimization FPGA logic resource usage based on number of inputs, not on Boolean complexity (as in ASICS) An EXOR gate in ASICS requires more area In FPGAs, XOR gate takes same amount of resources as and/or gates ExorBDS

BDD-based Decomposition BDS BDD-based program which decomposes circuits using BDDs as basic data structure Decomposing allows removal of shared nodes, as well as better mapping to FPGA LUT (Decompose circuit, so functions can be grouped into k-input functions) ExorBDS

ExorBDS Includes single stage of ESOP-minimization, followed by a stage of BDD-based decomposition 1. Use Exorcism4 for ESOP-minimization 2. Use BDS for BDD-decomposition ExorBDS

ExorBDS Parity prediction circuit Exorcism4 BDS Basic ExorBDS algorithm Convert benchmark circuit into parity prediction circuit, by changing original outputs to signals, and then XORing these signals to produce single parity output Run Exorcism4 on the parity prediction circuit to obtain minimized ESOP circuit Run BDS on minimized ESOP circuit to decompose circuit Convert to VHDL, synthesize ExorBDS

Experimental Methods Synthesized parity prediction functions of 14 MCNC benchmark circuits using 4 methods: Direct Method (Using commercial EDA tools only) Exorcism4 BDS ExorBDS ExorBDS

Experimental Results Results compared based on following metrics: Area (4-LUT) Delay (max. combinational path delay) Area-Delay Product ExorBDS

Experimental Results* Results of 13/14 benchmark circuits (Misex3 excluded – it is so large, dominates results) *: misex3 excluded ExorBDS

Conclusions These results would allow FPGA designer to have much more logic than the same FPGA using commercial tools Could help bridge the cost/logic gap between FPGA and ASIC ExorBDS

Future Work It is believed such efficiencies can also be extended to arithmetic circuits and error correcting/detecting circuits Analysis of ExorBDS on NON XOR-intensive circuits If results are as good or better, ExorBDS will provide a general solution to synthesis ExorBDS

Questions ? ExorBDS