majsynth
play

MajSynth An n -input Majority Algebra based Logic Synthesis Tool for - PowerPoint PPT Presentation

MajSynth An n -input Majority Algebra based Logic Synthesis Tool for QCA . Rajeswari Devadoss, Kolin Paul and M. Balakrishnan presented by M. Balakrishnan, Professor, CSE, IITD Department of Computer Science and Technology Indian Institute of


  1. MajSynth An n -input Majority Algebra based Logic Synthesis Tool for QCA . Rajeswari Devadoss, Kolin Paul and M. Balakrishnan presented by M. Balakrishnan, Professor, CSE, IITD Department of Computer Science and Technology Indian Institute of Technology Delhi

  2. A New Logic Gate The 3-input Majority Gate x • 2-AND : ⟨ x y 0 ⟩ = x · y . . . . . . . y M 3 ⟨ x y z ⟩ z • 2-OR : ⟨ x y 1 ⟩ = x + y More ‘1’s among inputs? • More : ⟨ x y z ⟩ = xy + yz + zx • Quantum-dot Cellular Automata • QCA Primary gate : 3-input Majority [1] • 5-input and 7-input Majority gates [2] • Other technologies : SET, TPL, STMG Majority Gate Introduction Slide 1 of 15

  3. Tweaked Logic Synthesis Existing . . . . . . . Pre-processing Majority Boolean Synthesis Algebra 3-input for Logic Minimization Majority Patterns NOT & 2-AND, 2-OR 3/4-var k-Map[3][4] Post-processing Genetic Algorithm[5] XOR[6] & BDD[7] Introduction Logic Synthesis Slide 2 of 15

  4. Tweaked Logic Synthesis Existing . . . . . . . Pre-processing Majority Boolean Synthesis Algebra 3-input for Logic Minimization Majority Patterns NOT & 2-AND, 2-OR 3/4-var k-Map[3][4] Post-processing Genetic Algorithm[5] XOR[6] & BDD[7] Introduction Logic Synthesis Slide 2 of 15

  5. Tweaked Logic Synthesis Existing . . . . . . . Pre-processing Majority Boolean Synthesis Algebra 3-input for Logic Minimization Majority Patterns NOT & 2-AND, 2-OR 3/4-var k-Map[3] [4] Post-processing Genetic Algorithm[5] XOR[6] & BDD[7] Introduction Logic Synthesis Slide 2 of 15

  6. Tweaked Logic Synthesis Existing . . . . . . . . Pre-processing Majority Boolean Synthesis Algebra 3-input for Logic Minimization Majority Patterns NOT & 2-AND, 2-OR n -input 3/4-var k-Map[3] [4] Majority Post-processing Genetic Algorithm[5] XOR[6] & BDD[7] Introduction Logic Synthesis Slide 2 of 15

  7. MajSynth : n -input Majority Algebra based Synthesis Existing Graph Decomposition . . . . . . . . . . . Majority Boolean Pre-processing Symmetry Synthesis Algebra Need : Mathematics 3-input 3-input 3-input for Logic Minimization and Majority Majority Majority n -input Majority Methods Patterns Patterns Patterns NOT & for Majority n -input Majority 3/4-var k-Map[3][4] Post-processing Genetic Algorithm[5] Downsize Majority XOR[6] & BDD[7] Introduction Logic Synthesis Slide 3 of 15

  8. MajSynth : n -input Majority Algebra based Synthesis Existing Graph Decomposition . . . . . . . . . . . Majority Boolean Pre-processing Symmetry Synthesis Algebra First step : 3-input 3-input 3-input for Logic Minimization Develop the Majority Majority Majority Mathematics n -input Majority Patterns Patterns Patterns NOT & of Majority n -input Majority 3/4-var k-Map[3][4] Post-processing Genetic Algorithm[5] Downsize Majority XOR[6] & BDD[7] n -input Majority Boolean Algebra Overview

  9. The n -input Majority Function if at least n + 1 w 1  1 of { w 1 , w 2 , . . . , w n } are ‘1’s w 2 M n  . . . . . . . . 2 M n = • • 0 otherwise w n  Example : The 7-input Majority function ⟨ a b c d e f g ⟩ = 1 iff at least 4 of { a , b , c , d , e , f , g } are ‘1’s • ⟨ a b c d 2 1 0 ⟩ = abc + ( a + b + c ) d • ⟨ a b c d 0 3 ⟩ = abcd • ⟨ a b c d 3 1 ⟩ = abc + d • ⟨ a b c 2 d 2 1 ⟩ =( a + b )( c + d ) + cd • ⟨ a b c d 2 0 2 ⟩ =( ab + bc + ca ) d • ⟨ a b c d e 3 ⟩ = abcd + ( a + b + c + d ) e Duplicates, constants among inputs : Different functions n -input Majority Boolean Algebra Slide 4 of 15

  10. Majority Law : Compaction Implement a single Majority term with fewer inputs ⟨ a b 2 c 3 d 5 ⟩ = . . . . ⟨ a b 2 c 3 d 5 e 6 e 6 ⟨ a b c d 2 ⟩ 0 1 ⟩ = ���� ���� � �� � Cancel Cancel Compact redundant inputs Conditions when term evaluates to ‘1’ ⟨ a b 2 c 3 d 5 ⟩ . . . . ⟨ a b c d 2 ⟩ At least 11 + 1 At least 5 + 1 2 = six ‘1’s 2 = three ‘1’s ad 5 , b 2 d 5 , c 3 d 5 , ab 2 c 3 ad 2 , bd 2 , cd 2 , abc Both implement ad + bd + cd + abc Solve ILP representing Majority term to minimize size Majority Laws Boolean Algebra Slide 5 of 15

  11. Majority Law : Flatten AND ( a , b , AND ( c , d ) )= AND ( a , b , c , d ) � �� � Flatten OR ( OR ( a , b ) , OR ( c , d ) )= OR ( a , b , c , d ) � �� � � �� � Flatten Flatten Flatten singleton n -input Majority: n + 1 copies of other inputs 2 ⟨ 0 2 x y z ⟩ . . ⟨ 0 2 x y z ⟩ xyz + xyz ⇒ ⟨ 1 ⟩ � �� � � �� � Make 5 + 1 2 = 3 copies Flatten = ⟨ 1 3 ⟨ 0 2 x y z ⟩ 3 0 2 x y z ⟩ � �� � Compact = ⟨ 1 x y z ⟨ 0 2 x y z ⟩ 3 ⟩ Majority Laws Boolean Algebra Slide 6 of 15

  12. Majority Law : Distributivity a · b · ( c + d + e ) = a · b · c + a · b · d + a · b · e � �� � Distribute Distribute at least n + 1 inputs of a n -input Majority term 2 0 2 x . . . . y z ⟩ 3 xyz + xyz ⇒ ⟨ 1 x y z ⟨ ⟩ � �� � Distr. All = ⟨⟨ 1 x y z 0 3 ⟩ 2 ⟨ 1 x y z x 3 ⟩ ⟨ 1 x y z y 3 ⟩ ⟨ 1 x y z z 3 ⟩ ⟩ � �� � � �� � � �� � � �� � Compact Compact Compact Compact ⟨ 0 2 x y z ⟩ 2 x ⟨ 1 x y 2 z ⟩ ⟨ 1 x y z 2 ⟩⟩ [ Distribute all inputs ] . . = ⟨ ⟨ 0 2 x y z ⟩ 2 x . . . . y z [ Distribute ( 5 + 1 ) / 2 = 3 inputs : 0 2 , x ] = ⟨ ⟩ ���� � �� � not distr. from distr. Rank and choose inputs to distribute to simplify expression Majority Laws Boolean Algebra Slide 7 of 15

  13. Majority Law : Distributivity a · b · ( c + d + e ) = a · b · c + a · b · d + a · b · e � �� � Distribute Distribute at least n + 1 inputs of a n -input Majority term 2 0 2 x . . . . y z ⟩ 3 xyz + xyz ⇒ ⟨ 1 x y z ⟨ ⟩ � �� � Distr. 0 2 , x = ⟨⟨ 1 x y z 0 3 ⟩ 2 ⟨ 1 x y z x 3 ⟩ ⟨ 1 x y z y 3 ⟩ ⟨ 1 x y z z 3 ⟩ ⟩ � �� � � �� � � �� � � �� � Compact Compact Compact Compact ⟨ 0 2 x y z ⟩ 2 x ⟨ 1 x y 2 z ⟩ ⟨ 1 x y z 2 ⟩⟩ [ Distribute all inputs ] . . = ⟨ ⟨ 0 2 x y z ⟩ 2 x . . . . y z Distribute ( 5 + 1 ) / 2 = 3 inputs : 0 2 , x [ ] = ⟨ ⟩ ���� � �� � not distr. from distr. Rank and choose inputs to distribute to simplify expression Majority Laws Boolean Algebra Slide 7 of 15

  14. Majority Law : Difference Exploit Common and Differing (Negated) elements ⇒ ⟨⟨ 0 2 . . y z ⟩ 2 . . . . . . y z ⟩ 2 . . . . . . x x y z ⟩ x y z ⟩ xyz + xyz = x ( yz + yz ) = ⟨⟨ 0 � �� � Diff : y , z ; Common : x Beyond sum/product forms of common, differing elements . . . . . . . . x y z ⟨⟨ 0 y z ⟩ 2 x y z ⟩ 3 ⟩ xyz + xyz + xyz ⇒ ⟨ 1 � �� � Diff : x, y ; Common : z = ⟨⟨⟨ . . y z ⟩ 2 x . . . . . . 0 y 1 ⟩ 2 x y z ⟩ � �� � Diff : 0; Common : y y 0 ⟩ 2 x y z ⟩ = ⟨⟨⟨ 1 x z ⟩ � �� � Flatten Majority Laws Boolean Algebra Slide 8 of 15

  15. MajSynth : n -input Majority Algebra based Synthesis Existing Graph Decomposition . . . . . . . . . . . Majority Boolean Pre-processing Symmetry Synthesis Algebra Next step : 3-input 3-input 3-input for Use algebra Logic Minimization Majority Majority Majority to Minimize n -input Majority Patterns Patterns Patterns NOT & expressions n -input Majority 3/4-var k-Map[3][4] Post-processing Genetic Algorithm[5] Downsize Majority XOR[6] & BDD[7] Logic Minimization Iterative Method Overview

  16. Iterative Minimization : x ⊕ y ⊕ z While reducible nodes available M 7 + M 4 = ⟨ 1 x y z ⟨ 0 2 x y z ⟩ 3 ⟩ � �� � Diff : y , z ; Common : x 1. Choose next node M 2 + M 7 , 4 = ⟨ 1 x y z ⟨⟨ 0 y z ⟩ 2 x y z ⟩ 3 ⟩ � �� � 2. Flatten if possible Diff : x, y ; Common : z = ⟨ ⟨⟨ 0 y z ⟩ 2 x y 1 ⟩ 2 x y z ⟩ 3. Else Diff. if possible � �� � Diff : 0; Common : y y 0 ⟩ 2 x y z ⟩ = ⟨⟨ ⟨ 1 x z ⟩ 4. Else Distr. if it simplifies � �� � Flatten : 2x = ⟨⟨ 1 x z y 2 0 2 ⟩ 2 x y z ⟩ 5. Compact node � �� � Compact = ⟨⟨ 0 x y 2 z ⟩ 2 x y z ⟩ Analysis � �� � Distr y 2, z = ⟨ 0 x ⟨ x y z ⟩ 2 ⟨ x y z ⟩ ⟩ • Start : Ordered minterms � �� � Flatten : 2x = ⟨ 0 2 x 2 ⟨ x y z ⟩ 4 x y z ⟩ • Low scalability as no. of � �� � Compact minterms grow M 1 + M 2 , 7 , 4 = ⟨ 1 x y z ⟨ 0 x y z ⟨ x y z ⟩ 3 ⟩ 3 ⟩ � �� � Diff : 0; Common : x , y ,z • Reduction : Unrestricted M 1 , 2 , 7 , 4 = ⟨ x y z ⟨ x y z ⟩ 2 ⟩ n -input Majority terms M 7 , 4 , 2 , 1 = ⟨ x y z ⟨ x y z ⟩ 2 ⟩ Logic Minimization Iterative Method Slide 9 of 15

  17. MajSynth : n -input Majority Algebra based Synthesis Existing Graph Decomposition . . . . . . . . . . . Majority Boolean Pre-processing Symmetry Synthesis Algebra Next step : 3-input 3-input 3-input for Logic Minimization Apply Majority Majority Majority n -input Majority gate size Patterns Patterns Patterns NOT & constraints n -input Majority 3/4-var k-Map[3][4] Post-processing Genetic Algorithm[5] Downsize Majority XOR[6] & BDD[7] Downsize Majority Post-processing Overview

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend