+ All Categories
Home > Documents > Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for FPGAs

Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for FPGAs

Date post: 03-Jan-2016
Category:
Upload: keane-bullock
View: 16 times
Download: 0 times
Share this document with a friend
Description:
Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for FPGAs. Vishesh Kalra EE800 11089943. @Tomasz S. Czajkowski and Stephen D. Brown , IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 27, NO. 12, DECEMBER 2008. Earlier Method’s. - PowerPoint PPT Presentation
22
Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for FPGAs @Tomasz 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 EE800 11089943
Transcript
Page 1: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Functionally Linear Decomposition and Synthesis (FLDS) of Logic Circuits for FPGAs

@Tomasz S. Czajkowski and Stephen D. Brown ,IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS,

VOL. 27, NO. 12, DECEMBER 2008

Vishesh KalraEE800

11089943

Page 2: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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

Page 3: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Introduction

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

Page 4: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Concept of Linearity

• Concept of Linearity >F(x)=∑Gi(y)*Hi(x-y)

>X,Y are set of Variables(Y≤X). > ∑ represents XOR gate. >F is weighted sum of functions of Gi(Basis), where weighting factors are

determined by Hi(Selector).• This retains ability to synthesize original function

using Davio/Shanon’s as well as BDD.

Page 5: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Concept of Vector Space

• 1 0 2 6 2 0 1 3 5 2 0 0 0 0 0

Two Left most vectors are known as “Basis”

Page 6: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Concept of Vector Space

• Suppose we have a vector

1 -3 4 -2 5 4 Gaussian Elimination

2 -6 9 -1 8 2 -------------------------- 2 -6 9 -1 9 7 -1 3 -4 2 -5 -4 1 -3 4 -2 5 4 0 0 1 3 -2 -6 0 0 0 0 1 5 0 0 0 0 0 0

Page 7: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Basis

1 4 5

2 9 8 2 9 9

-1 -4 -5

Page 8: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Truth Table Decomposition

GaussianElimination

BASIS VECTOR

Page 9: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Synthesis

• G1=c; G2=d;

• Next Step-Try Express entire truth table as combination of these two vectors(Basis Vectors)

• Expressing each Column as h1iG1 (XOR)h2iG2

• To find h1i and h2i we solve linear equation

of the form Ax=B;

• A=[G1 G2] ,x=[h1i h2i]T , B=one of the other columns

Page 10: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Synthesis Continued

By inspection,h1i=1,h2i=1

Page 11: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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 h1=1, i.e.

ab=01 and ab=11,• Selector Function for G1,i.e. H1=b and G2,i.e.

H2=a;

• Result=f=G1H1(XOR)G2H2= bc (xor) ad;

Page 12: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Multi Output Synthesis

f

g

abcd

e

f

g

f=(a+b)d (xor) abc

Page 13: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Ripple Carry Adder

Page 14: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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.

Page 15: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Another Efficient Approach

Page 16: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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

Page 17: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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. G1=c , G2=D , G3=1, and it is found that selector functions for G1 and G2 are complements of each other and their product is 0.

• Therefore Unnecessary to add them using XOR.

Page 18: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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.

Page 19: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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.

Page 20: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

Results-NON-XOR Based Logic Circuits

• FLDS VS ABC >ABC produces circuits with 6.2% lower area results and 16.5 lower depth.

Page 21: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

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.

Page 22: Functionally Linear Decomposition and  Synthesis (FLDS) of  Logic Circuits for FPGAs

THANK YOU


Recommended