A Formulation of Fast Carry Chains Suitable for Efficient Implementation with Majority Elements Behrooz Parhami (2nd author) Dept. Electrical & Computer Eng. Univ. of California, Santa Barbara Dariush Abedi Ghassem Jaberipur Shahid Beheshti Univ., Iran Shahid Beheshti Univ. & IPM, Iran
Continual Reassessment of Designs • Change in cost/delay models with advent of ICs Transistors became faster/cheaper; wires costlier/slower • Adaptation to CMOS, domino logic, and the like Optimal design for one technology not best with another • Power and energy-efficiency considerations Voltage levels and number of transitions became important • Quantum computing and reversible circuits Fan-out; managing constant inputs and garbage outputs • Nanotech and process uncertainty / unreliability Designs for a wide range of circuit parameters and failures • Novel circuit elements and design paradigms From designs optimized for FPGAs to biological computing B. Parhami Slide # 002 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Threshold, Majority, Median Threshold logic extensively studied since the 1940s “Fires” if weighted sum of the inputs equals or exceeds the threshold value sum = w 1 x 1 + w 2 x 2 + w 3 x 3 Majority is a special case with unit weights and t = ( n + 1)/2 For 3-input majority gate: w 1 = w 2 = w 3 = 1; t = 2 For 0-1 inputs, majority is the same as median Axioms defining a median algebra B. Parhami Slide # 003 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Emerging Majority-Based Technologies • Quantum-dot cellular automata (QCA) The basic cell has four electron place-holders (“dots”) • Single-electron tunneling (SET) Based on controlled transfer of individual electrons • Tunneling phase logic (TPL) Capacitively-coupled inputs feed a load capacitance • Magnetic tunnel junction (MTJ) Uses two ferromagnetic thin-film layers, free and fixed • Nano-scale bar magnets (NBM) Scaled-down adaptation of fairly old magnetic logic • Biological embodiments of majority function Basis for neural computation in human / animal brains B. Parhami Slide # 004 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Quantum-dot Cellular Automata (QCA) The basic cell has four electron place-holders (“dots”) Null “1” “0” Three QCA cell configurations (0,1,0) 0 (1,1,0) 1 A robust QCA Inverter QCA M gates with 2 sets of inputs B. Parhami Slide # 005 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Single-Electron Tunneling (SET) Based on controlled transfer of individual electrons Inputs a ( a , b , c ) a a b c SET circuits for M (left) and inversion (right) [28] B. Parhami Slide # 006 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Tunneling Phase Logic (TPL) Clock 1 Capacitively-coupled inputs feed a load capacitance Clock 2 a The basic TPL gate implements the minority function b _ ( a , b , c ) inv( a ) = a = minority( a , 0, 1) Pump c Pump B. Parhami Slide # 007 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Magnetic Tunnel Junction (MTJ) Uses two ferromagnetic thin-film layers, free and fixed WE a b c a b c -I ≡ +I a b c a b c a b c WE Majority gate in MTJ logic B. Parhami Slide # 008 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Nano-scale Bar Magnets (NBM) 1 1 1 1 Out Out Out Out 0 1 0 0 1 0 1 0 0 1 0 1 Voting with nanomagnets Scaled-down adaptation of fairly old magnetic logic Two types of nanomagnet wires B. Parhami Slide # 009 ARITH ‐ 23: Fast Carry Chains with Majority Elements
The Carry Recurrence and Operator � ��� � � � � � ∨ �� � ∨ � � �� � 0 � � � � � 1 With generate � � � � � � � and propagate � � � � � ∨ � � signals: � ��� � � � ∨ � � � � With group-generate � �:� and group-propagate � �:� signals: �� �:� , � �:� � � �� �:� ∨ � �:� � ���:� , � �:� � ���:� � a i � ��� � � �:� ∨ � �:� � � b i c i Carry generation using a majority gate: � ��� � ��� � , � � , � � � c i+ 1 B. Parhami Slide # 010 ARITH ‐ 23: Fast Carry Chains with Majority Elements
The Full-Adder (FA) Building Block b i a i � � � � � ⨁ � � ⨁ � � c i c i+ 1 FA � ��� � � � � � � � � � � � � � s i FA has been widely studied and optimized Implementation with seven 2-input gates: c i+ 1 a i b i s i c i B. Parhami Slide # 011 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Majority-Gate Implementations of FA Blind mapping: Seven partially utilized M-gates, 2 inverters: b a 0 S i 0 0 1 a i 0 0 c out PUM b i b a 1 c i 1 a i b i 1 FUM Three fully-utilized M gates, 2 inverters: � � � ��� � � �, � � , � � , � � � , � � , � � , � � � c i+ 1 c i � ��� � ��� � , � � , � � � S i B. Parhami Slide # 012 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Parallel-Prefix Kogge-Stone-Like CGN ( a 7 , b 7 ) ( a 6 , b 6 ) ( a 5 , b 5 ) ( a 4 , b 4 ) ( a 3 , b 3 ) ( a 2 , b 2 ) ( a 1 , b 1 ) ( a 0 , b 0 ) (c in ,1 ) : : c 7 c 6 c 4 c 3 c 2 c 5 c 1 KS with � �� c out : 0 1 M-based implementations of the building blocks: 0 : Blind mapping 1 1 Total of 73 PUM gates B. Parhami Slide # 013 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Exploiting Fully Utilized M-Gates: First Attempt by Pudi et al. in 4 4 3 3 2 2 1 1 0 0 7 7 6 6 5 5 0 0 1 1 1 1 1 5 3 5 6 4 7 3 0 0 1 (6:5) (4:3) (4:3) (6:5) 8-bit CGN: 0 CDP: 5 M 0 0 2 PUMs: 15 (6:3) (5:3) (5:3) 0 3 (7:5) FUMs: 13 0 0 0 M total: 28 (6:3) 3 (7:3) FUM%: 53 8 7 6 5 4 [61% fewer M-gates than with blind mapping] B. Parhami Slide # 014 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Exploiting Fully Utilized M-Gates: Second Attempt by Perri et al. a b a b i +1 i +1 i i Two-bit CGN 2-bit CGN: 1 with 1 M CDP CDP: 1 M 0 in c i -to- c i +2 path PUMs: 2 p i g i FUMs: 4 Total for 8-bit adder: 24 M total: 6 [67% fewer M-gates FUM%: 67 than with blind mapping] c i � ��� � ��� � ��� , � ��� , � � , � � ��� , � ��� , � � , � � � p i g i Conventional (2M delay, 2 FUM): c i +1 c i +2 � ��� � ��� ��� , � ��� , � � � , � � , � � � B. Parhami Slide # 015 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Our Compromise Solution (1M carry-path delay, 3 FUM) � ��� � ��� � ��� , � ��� , � � , � � ��� , � ��� , � � , � � � � ���:� � � � ��� , � ��� , � � � ���:� � � � ��� , � ��� , � � � ��� � ��� ���:� , � ���:� , � � � Think of � ���:� and � ���:� , as representing 2-bit inputs � ��� � � and � ��� � � Example: � ��� � � � � � � 1 ⟹ � � � � � � 1 ⟹ � ��� � 1 and � ��� � 1 ⟹ � ��� � 1 B. Parhami Slide # 016 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Generalizing the Compromise Solution Twin M-gate: ( � �:� , � �:� ): ( ��� � , � � , � ���:� � , ��� � , � � , � ���:� �� (A l ,B l ) (A r ,B r ) A r A l B l B r Majority group generate and propagate: ≡ Γ �:� � A �:� � П �:� � � �:� � � �:� �:� A B (A,B) Γ �:� � � � � � � Γ П �:� � � � � � � П ���:� ���:� ( �, � ): ( ��� � , � � , � � � , ��� � , � � , � � �� Properties: Γ �:� � � � � � � Γ ���:� П �:� � � � � � � П ���:� � ����� � ��� ���:� , � ���:� , � � � Associativity: � ���:� � ��� ���:� , � ���:� , � ���:� � , � ���:� � ��� ���:� , � ���:� , � ���:� � B. Parhami Slide # 017 ARITH ‐ 23: Fast Carry Chains with Majority Elements
KS-Like and LF-Like M-Based CGNs (with C in ) ( a 7 , b 7 ) ( a 6 , b 6 ) ( a 5 , b 5 ) ( a 4 , b 4 ) ( a 3 , b 3 ) ( a 2 , b 2 ) ( a 1 , b 1 ) ( a 0 , b 0 ) c in ( a 7 , b 7 ) ( a 6 , b 6 ) ( a 5 , b 5 ) ( a 4 , b 4 ) ( a 3 , b 3 ) ( a 2 , b 2 ) ( a 1 , b 1 ) ( a 0 , b 0 ) c in c 7 c 6 c 5 c 4 c 3 c 2 c 1 c out c 7 c 4 c 3 c 2 c out c 6 c 5 c 1 B. Parhami Slide # 018 ARITH ‐ 23: Fast Carry Chains with Majority Elements
KS-Like M-Based CGNs (with C in ) (% of FUM: 100) ( a 7 , b 7 ) ( a 6 , b 6 ) ( a 5 , b 5 ) ( a 4 , b 4 ) ( a 3 , b 3 ) ( a 2 , b 2 ) ( a 1 , b 1 ) ( a 0 , b 0 ) c in ( a 7 , b 7 ) ( a 6 , b 6 ) ( a 5 , b 5 ) ( a 4 , b 4 ) ( a 3 , b 3 ) ( a 2 , b 2 ) ( a 1 , b 1 ) ( a 0 , b 0 ) c in ( A 4:3 ,B 4:3 ) ( A 3:2 ,B 3:2 ) ( A 2:1 , B 2:1 ) ( A 5:4 ,B 5:4 ) ( A 7:6 ,B 7:6 ) ( A 6:5 ,B 6:5 ) ( A 1:0 , B 1:0 ) ( A 4:1 ,B 4:1 ) ( A 7:4 ,B 7:4 ) ( A 6:3 ,B 6:3 ) ( A 5:2 ,B 5:2 ) c 7 c 6 c 5 c 4 c 3 c 2 c 1 c 7 c 6 c 5 c 4 c 3 c 2 c 1 c out c out B. Parhami Slide # 019 ARITH ‐ 23: Fast Carry Chains with Majority Elements
Recommend
More recommend