Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for S. Czajkowski and Stephen D. Brown,IEEE TRANSACTIONS ON COMPUTER-AIDED.

Slides:



Advertisements
Similar presentations
Perceptron Lecture 4.
Advertisements

ECE 3110: Introduction to Digital Systems Chapter 6 Combinational Logic Design Practices XOR, Parity Circuits, Comparators.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 9 Programmable Configurations Read Only Memory (ROM) – –a fixed array of AND gates.
Logic Gate Level Part 2. Constructing Boolean expression from truth table First method: write nonparenthesized OR of ANDs Each AND is a 1 in the result.
Computer organization at the logic level Some not so famous last words.
Section 10.3 Logic Gates.
Part 2: DESIGN CIRCUIT. LOGIC CIRCUIT DESIGN x y z F F = x + y’z x y z F Truth Table Boolean Function.
CS 105 Digital Logic Design
XOR, XNOR, and Binary Adders
June 10, Functionally Linear Decomposition and Synthesis of Logic Circuits for FPGAs Tomasz S. Czajkowski and Stephen D. Brown University of Toronto.
Binary Numbers.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
+ CS 325: CS Hardware and Software Organization and Architecture Combinational Circuits 1.
ADDERS Half Adders Recall that the basic rules of binary addition are as indicated below in Table 2-9. A circuit known as the half-adder carries out these.
1 The Chinese University of Hong Kong Faculty of Education Diploma in Education (Part-Time) Winter 1997 Educational Communications and Technology Assignment.
Module 9.  Digital logic circuits can be categorized based on the nature of their inputs either: Combinational logic circuit It consists of logic gates.
Copyright © 2004 by Miguel A. Marin1 COMBINATIONAL CIRCUIT SYNTHESIS CLASSIC TWO-LEVEL CIRCUIT SYNTHESIS MULTILEVEL-CIRCUIT SYNTHESIS FACTORIZATION DECOMPOSITION.
Lecture 9 Topics: –Combinational circuits Basic concepts Examples of typical combinational circuits –Half-adder –Full-adder –Ripple-Carry adder –Decoder.
Chapter 3: Digital Logic Dr Mohamed Menacer Taibah University
Sneha.  Gates Gates  Characteristics of gates Characteristics of gates  Basic Gates Basic Gates  AND Gate AND Gate  OR gate OR gate  NOT gate NOT.
4. Computer Maths and Logic 4.2 Boolean Logic Logic Circuits.
Logic Design CS 270: Mathematical Foundations of Computer Science Jeremy Johnson.
1 Lecture 6 BOOLEAN ALGEBRA and GATES Building a 32 bit processor PH 3: B.1-B.5.
Half Adder & Full Adder Patrick Marshall. Intro Adding binary digits Half adder Full adder Parallel adder (ripple carry) Arithmetic overflow.
EE2174: Digital Logic and Lab Professor Shiyan Hu Department of Electrical and Computer Engineering Michigan Technological University CHAPTER 8 Arithmetic.
Universal college of engineering & technology. .By Harsh Patel)
Abstract To present a novel logic synthesis method to reduce the area of XOR-based logic functions. Idea: To exploit linear dependency between logic sub-
Boolean Algebra & Logic Circuits Dr. Ahmed El-Bialy Dr. Sahar Fawzy.
1 Fundamentals of Computer Science Combinational Circuits.
Gates AND, OR, NOT NAND, NOR Combinational logic No memory A set of inputs uniquely and unambiguously specifies.
CO5023 Building Circuits from Truth Tables. Build the following… Let’s say we want a circuit which acts as described by the following truth table: We.
ECE DIGITAL LOGIC LECTURE 15: COMBINATIONAL CIRCUITS Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 10/20/2015.
Simple ALU  Half adder  Full adder  Constructing 4 bits adder  ALU does several operations  General ALU structure  Timing diagram of adder  Overflow.
ECE 3110: Introduction to Digital Systems Chapter 5 Combinational Logic Design Practices Adders,subtractors, ALUs.
Binary Decision Diagrams Prof. Shobha Vasudevan ECE, UIUC ECE 462.
4–1. BSCS 5 th Semester Introduction Logic diagram: a graphical representation of a circuit –Each type of gate is represented by a specific graphical.
LOGIC CIRCUITLOGIC CIRCUIT. Goal To understand how digital a computer can work, at the lowest level. To understand what is possible and the limitations.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patterson and Hennessy Text.
BDD-based Synthesis of Reversible Logic for Large Functions Robert Wille Rolf Drechsler DAC’09 Presenter: Meng-yen Li.
This chapter in the book includes: Objectives Study Guide
Dr.Ahmed Bayoumi Dr.Shady Elmashad
Combinational Circuits
Prof. Sin-Min Lee Department of Computer Science
ECE 3130 Digital Electronics and Design
Combinational Circuits
Lecture 6: Universal Gates
Combinational Circuits
Computer Architecture CST 250
This chapter in the book includes: Objectives Study Guide
Reference: Moris Mano 4th Edition Chapter 4
Fundamentals & Ethics of Information Systems IS 201
Summary Half-Adder Basic rules of binary addition are performed by a half adder, which has two binary inputs (A and B) and two binary outputs (Carry out.
XOR, XNOR, and Binary Adders
FUNCTION OF COMBINATIONAL LOGIC CIRCUIT
Reading: Hambley Chapters
BASIC & COMBINATIONAL LOGIC CIRCUIT
Lecture 6: Universal Gates
King Fahd University of Petroleum and Minerals
XOR, XNOR, & Binary Adders
Optimization Algorithm
Programmable Configurations
Logic Gates.
13 Digital Logic Circuits.
Overview Part 2 – Circuit Optimization
XOR, XNOR, and Binary Adders
Combinational Circuits
XOR Function Logic Symbol  Description  Truth Table 
XOR, XNOR, and Binary Adders
Principles & Applications
Circuit Simplification and
Presentation transcript:

Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for S. Czajkowski and Stephen D. Brown,IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 27, NO. 12, DECEMBER 2008 Vishesh Kalra EE Vishesh Kalra EE

Earlier Method’s Transforms >Logic function->Different Domains->Analysis Binary Decision Diagrams(BDD) Linear(OR/XOR) and Non Linear(AND/OR/NOT) More Recently Davio and Shanon’s for XOR based Decomposition

Introduction XOR based Logic Synthesis Approach. Methods >Gaussian Elimination >Binary Decision Diagrams to represent Logic functions

Concept of Linearity >F(x)=∑G i (y)*H i (x-y) >X,Y are set of Variables(Y≤X). > ∑ represents XOR gate. >F is weighted sum of functions of G i (Basis), where weighting factors are determined by H i (Selector). This retains ability to synthesize original function using Davio/Shanon’s as well as BDD.

Concept of Vector Space Two Left most vectors are known as “Basis”

Concept of Vector Space Suppose we have a vector Gaussian Elimination

Basis

Truth Table Decomposition Gaussian Elimination BASIS VECTOR

Synthesis G 1 =c; G 2 =d; Next Step-Try Express entire truth table as combination of these two vectors(Basis Vectors) Expressing each Column as h 1i G 1 (XOR)h 2i G 2 To find h 1i and h 2i we solve linear equation of the form Ax=B; A=[G 1 G 2 ],x=[h 1i h 2i ] T, B=one of the other columns

Synthesis Continued By inspection,h 1i =1,h 2i =1

Synthesis Results Next Step-To find Selector Functions that will identify the columns in which given Basis Vector appears. We look at the columns for which h 1 =1, i.e. ab=01 and ab=11, Selector Function for G 1,i.e. H 1 =b and G 2,i.e. H 2 =a; Result=f=G 1 H 1 (XOR)G 2 H 2 = bc (xor) ad;

Multi Output Synthesis f f g g a b c d e f g f=(a+b)d (xor) abc

Ripple Carry Adder

Performance Considerations Some Problems with the above mentioned of merging Truth tables. >Storing a Truth Table in memory will become complex for more than 20 variables.(Increase in memory) Another Solution Proposed – Gaussian-Jordan Elimination instead of Gaussian Elimination.

Another Efficient Approach

FPGA Considerations Size Of LUT, used by an FPGA. INPUT KEY (SIZE OF LUT) HASH TABLE Check if LUT is created or it’s compliment Y Instead of adding New LUT, wire or inverter is added thereby saving Area N

Modifying FLDS for Reducing Area We can Replace XOR gate by Or gate if >Product of a pair of Basis Function or their respective selector functions is zero. >Then XOR gate use to sum Basis-Selector Products can be replaced by an OR gate. 3 BASIS Functions i.e. G 1 =c, G 2 =D, G 3 =1, and it is found that selector functions for G 1 and G 2 are complements of each other and their product is 0. Therefore Unnecessary to add them using XOR.

Experiments Technique was tested on a set of 99 MCNC benchmarks, mapping each design into a network of four input LUT’s. On the 25 of the benchmarks (classified as XOR based Logic circuits), approach provides significant area savings.

Results-XOR Based Logic Circuits FLDS VS BDS-PGA >XOR based logic functions can be significantly reduced in size and logic depth 18.8% and 14.5% respectively FLDS VS ABC >25.3% in area and 7.7% in depth.

Results-NON-XOR Based Logic Circuits FLDS VS ABC >ABC produces circuits with 6.2% lower area results and 16.5 lower depth.

Future Work Proposed by Authors Both Altera and Xilinx FPGA’s contain Carry chains to implement Fast Ripple Carry Adders. These Adders contain XOR gates outside LUT’s. It is possible to utilize these XOR gate outside LUT Network to further reduce area taken by logic function.