Modulo-(2π + 3) Parallel Prefix Addition via Diminished-3 Representation of Residues
Authors: Ghassem Jaberipur, Sahar Moradi Cherati
Arith 26
Kindly presented by: Paulo SΓ©rgio Alves Martins
Modulo-( 2 + 3 ) Parallel Prefix Addition via Diminished-3 - - PowerPoint PPT Presentation
Modulo-( 2 + 3 ) Parallel Prefix Addition via Diminished-3 Representation of Residues Authors: Ghassem Jaberipur, Sahar Moradi Cherati Arith 26 Kindly presented by: Paulo Srgio Alves Martins Contents 2/22 3/22 I NTRODUCTION Popular
Authors: Ghassem Jaberipur, Sahar Moradi Cherati
Arith 26
Kindly presented by: Paulo SΓ©rgio Alves Martins
2/22
ο΄ Residue number systems (RNS)
ο΄ β = {π1, π2 β¦ ππ}, ππ(1 β€ π β€ π) ο΄ π = π=1
π
ππ
ο΄ Applications ο΄ RNS Features 3/22
π, π β β π = π¦1, π¦2 β¦ , π¦π , π = (π§1, π§2 β¦ , π§π), where π¦π = π ππ, π§π = π ππ π = π β π, π¨π = π¦π β π§π, where ββ {+, β,Γ}
2π Β± Ξ΄ 1 β€ Ξ΄ < 2πβ1
Parallel prefix modulo-(2π β Ξ΄) adders:
, where 1 < Ξ΄β² = 2π β Ξ΄ < 2π No direct fast solution Delay
3 + 2 log π Ξ 4 + 2 log π Ξ 5 + 2 log π Ξ
4/22
π: A modulo-(2π + 1) residue β 0,2π π = πβ² + π¨π, where πβ² = π β 1 β 0,2π β 1 for π > 0 π¨π = 0(1), if and only if π = 0(> 0) π¨π = (π¨π΅β¨ π¨πΆ) β§ π¨π΅π¨πΆ β§ π πβ² = π΅β² + πΆβ² + π¨π΅ + π¨πΆ β π¨π 2π+1 = πβ² + π¨π΅π¨πΆπ₯π
β² 2π
Diminished-1 encoding π₯π
β² = π»πβ1:0
π = ππβ1:0π»πβ1:0 = 1, Iff π΅β² + πΆβ² = 2π β 1 π = π΅ + πΆ 2π+1 = πβ² + π¨π, π΅ = π΅β² + π¨π΅, πΆ = πΆβ² + π¨πΆ πβ² = π β 1, π΅β² = π΅ β 1, πΆβ² = πΆ β 1 for π, π΅, πΆ > 0 π¨π, π¨π΅, π¨πΆ: zero-indicator bits π΅β² + πΆβ² = 2ππ₯π
β² +
πβ², where πβ² = π₯πβ1
β²
β¦ π₯0
β²
πβ² = π β 1 = π΅ + πΆ 2π+1 β 1 = π΅β² + 1 + πΆβ² + 1 β 1 2π+1 = 2ππ₯π
β² +
πβ² + 1 2π+1 = πβ² + 1 β π₯π
β² 2π+1 =
πβ² + π₯β²π Diminished-1 addition
5/22
RPP TPP
7/22
π: Moduloβ 2π + 3 residue β [0, 2π + 2] πβ² β [0, 2π β 1]
D3 Representation
π = πβ² + π
π
π
π = π’1π’0
{0, 1, 2} [3, 2π + 2] π
π β {0, 1, 2}-indicator
πβ² βΆ π bit
π
π = 0 βΊ π = 0, πβ² = 0
π
π = 1 βΊ π = 1, πβ² = 0
π
π = 2 βΊ π = 2, πβ² = 0
π
π = 3 βΊ 3 β€ π β€ 2π + 2, πβ² β [0,2π β 1]
8/22
π΅ β [0, 2π + 2] π΅ = π΅β² + π
π΅
π΅β²= ππβπ β¦ ππ ππ ππ πΆβ² = ππβπ β¦ ππ ππ ππ π₯π
β²
π₯πβπ
β²
β¦ π₯2
β²
π₯1
β²
π₯0
β²
π΅, πΆ, π β₯ 3 πβ² = π β 3 = π΅ + πΆ 2π+3 β 3 = π΅β² + 3 + πΆβ² + 3 β 3 2π+3 = 2ππ₯π
β² +
πβ² + 3 2π+3 = πβ² + 3 1 β π₯π
β² 2π+3 =
πβ² + 3π₯β²π πΆ β [0, 2π + 2] πΆ = πΆβ² + ππΆ
9/22
π + π πππ π π π + π πππ π π
10/22
IF π΅β² + πΆβ² = 2π β 1 THEN ΞΎ1 = 1 ELSE ΞΎ1 = 0 IF π΅β² + πΆβ² = 2π β 2 THEN ΞΎ2 = 1 ELSE ΞΎ2 = 0 IF π΅β² + πΆβ² = 2π β 3 THEN ΞΎ3 = 1 ELSE ΞΎ3 = 0 ΞΎ1 = ππβ1:2π»πβ1:2β1π£0 ΞΎ2 = ππβ1:2π»πβ1:2β1π£0 ΞΎ3 = ππβ1:2π»πβ1:2π£1π£0 π» = π© + πͺ ππ+π = π IF π΅β² + πΆβ² = 2π β 1 THEN ΞΎ = 1 ELSE ΞΎ = 0 π¬π
11/22
ο΄ Ο1 = Ξ±1Ξ²1 β¨ Ξ±0Ξ²0 π§ β¨ π
1(Ξ±1, Ξ²1, Ξ±0, Ξ²0, π£1, π€1, π£0)
ο΄ Ο0 = Ξ±1Ξ²0 β¨ Ξ±0Ξ²1 π§ β¨ π
0 Ξ±1, Ξ²1, Ξ±0, Ξ²0, π£1, π€1, π£0
π§ = ππβ1:2π»πβ1:2,
ΞΎ1 = π§β1π£0, ΞΎ2 = π§β1π£0, ΞΎ3 = π§π£1π£0
12/22
πΌπ© πΌπͺ ππ ππ ππ πΌπ» π» Justification 3 1 X X 3 β₯ 4 π΅β² + πΆβ² = π΅β² < 2π β 1 βΉ π = π΅ + πΆ = π΅β² + 3 + 1 < 2π + 3 3 1 1 X X π΅β² + πΆβ² = 2π β 1 βΉ π΅ + πΆ = 2π + 3, π = π΅ + πΆ 2π+3 = 0 π
π = 3π1
πΌπ© πΌπͺ ππ ππ ππ πΌπ» π» Justification 3 2 X 3 β₯ 5 π΅β² + πΆβ² = π΅β² < 2π β 2 βΉ π = π΅ + πΆ = π΅β² + 3 + 2 < 2π + 3 3 2 1 X π΅β² + πΆβ² = 2π β 2 βΉ π΅ + πΆ = 2π + 3, π = π΅ + πΆ 2π+3 = 0 3 2 1 X 1 1 π΅β² + πΆβ² = 2π β 1 βΉ π΅ + πΆ = 2π + 4, π = π΅ + πΆ 2π+3 = 1 π
π = π1 + 3 π1 π2
πΌπ© πΌπͺ ππ ππ ππ πΌπ» π» Justification 3 3 3 β₯ 6 π΅β² + πΆβ² < 2π β 3 βΉ π = π΅ + πΆ = π΅β² + πΆβ² + 6 < 2π + 3 3 3 3 β₯ 3 2π β€ π΅β² + πΆβ² β€ 2π + 2π β 2 βΉ 3 β€ π = π΅ + πΆ 2π+3 β€ 2π + 1 3 3 1 π΅β² + πΆβ² = 2π β 3 βΉ π΅ + πΆ = 2π + 3, π = π΅ + πΆ 2π +3 = 0 3 3 1 1 1 π΅β² + πΆβ² = 2π β 2 βΉ π΅ + πΆ = 2π + 4, π = π΅ + πΆ 2π +3 = 1 3 3 1 2 2 π΅β² + πΆβ² = 2π β 1 βΉ π΅ + πΆ = 2π + 5, π = π΅ + πΆ 2π +3 = 2 π
π = 2π1 + π2 + 3 π1 π2 π3
πΌπ© πΌπͺ ππ ππ ππ πΌπ» π» Justification 3 X X X 3 β₯ 3 π = π΅ + πΆ = π΅ β€ 2π + 2 π
π = 3
13/22
THE NOISE TERM π = π
π΅ + ππΆ β π π IN TERMS OF π π΅, ππΆ, AND ΞΎ BITS
πβ² = π΅β² + π
π΅ + πΆβ² + ππΆ β π π 2π+3 = π΅β² + πΆβ² + π π΅ + ππΆ β π π 2π+3
= 2ππ₯π
β² +
πβ² + π 2π+3 = πβ² + π β 3π₯π
β² 2π+3 =
πβ² + πβ² 2π+3, πβ² = π β 3π₯π
β²
πΌπͺ πΌπ© 1 2 3 1 3π1 + 1 2 1 2π1 + 3π2 + 2 3 3π1 + 1 2π1 + 3π2 + 2 π1 + 2π2 + 3π3 + 3
14/22
π»β² = πΏβ² + πππ
β² + πβ² ππ
π¨ = Ξ±1Ξ²1Ξ±0Ξ²0 Ξ΄β² = Ξ΄1
β² Ξ΄0 β² β {0,1,2}
Ξ΄1
β² =
ΞΎ1Ξ±1Ξ²1 Ξ±0β¨Ξ²0 β¨ ΞΎ1 ΞΎ2π¨π₯π
β²,
Ξ΄0
β² = ΞΎ1π¦ β¨ ΞΎ2π¨ β¨ Ξ±0Ξ²0 Ξ±1β¨Ξ²1 β¨ Ξ±1Ξ²1Ξ±0 β¨ Ξ²0
15/22
The required RPP circuitry
pgh pgh pgh pgh pgh pgh pgh
π£7 π€7
π 1, π 1 HA HA HA HA HA HA HA HA
π0 π0 π1 π1 π2 π2 π3 π3 π4 π4 π5 π5 π6 π6 π7 π7 π£6 π€6 π£5 π€5 π£4 π€4 π£3 π€3 π£2 π€2 π£1 π€1 π£0 π€8 π‘7
β²
π‘6
β²
π‘5
β²
π‘4
β²
π‘3
β²
π‘2
β²
π‘1
β²
π‘0
β²
π7 π6 π5 π4 π3 π2 π0 π1
(ππ:π,ππ:π)
πΈπ:π
π―π:π π―π:π π£0 (6Ξ)π03 π02(3Ξ) πΈπ:π π01(4Ξ) π§(4Ξ) (4Ξ)π12 π13(4Ξ) πΈπ:π πΈπ:π π11(5Ξ) (3Ξ)π¦ (4Ξ)π§
Ο1 Ο0
Ξ±0Ξ²1 Ξ±1Ξ²1 Ξ±1Ξ²0 π
0(7Ξ)
Ξ±0Ξ²0 π
1(7Ξ)
π―π:π πΈπ:π
pgh
( , )
i i
g p
i
h ( , )
l l r l r
g p g p p ο ( , )
r r
g p ( , )
l l
g p ( )
l l r
g p g ο ( , )
r r
g p ( , )
l l
g p ( , )
i i
g p ( , )
i i
g p
π£π π€π
π + π πππ π π
16/22
ππ = π»πβ1:2 β¨ ππβ1:2π2=π»πβ1:2 β¨ ππβ1:2 π1
β² β¨ π1 β²π»πβ1:2 = π»πβ1:2 β¨ ππβ1:2 π1 β² β¨ π1 β²π»πβ1:π
π2 = π1
β² β¨ π1 β²π»7:2, π1 β², π1 β² β π»7:2, 1
π3 = π2 β¨ π2 π1
β² β¨ π1 β²π»7:3 , π2, π2 β π1 β², π1 β² β π»7:3, 1
π4 = π»3:2 β¨ π3:2 π1
β² β¨ π1 β²π»7:4 , (π», π)3:2β (π1 β², π1 β²) β π»7:4, 1
π5 = π»4:2 β¨ π
4:2 π1 β² β¨ π1 β²π»7:5 , π», π 4:2 β (π1 β², π1 β²) β π»7:5, 1
π6 = π»5:2 β¨ π5:2 π1
β² β¨ π1 β²π»7:6 , π», π 5:2 β (π1 β², π1 β²) β π»7:6, 1
π7 = π»6:2 β¨ π6:2 π1
β² β¨ π1 β²π7 , π», π 6:2 β (π1 β², π1 β²) β π7, 1
17/22
The required TPP circuitry
Ξ±0Ξ²1
Ο1
Ξ±1Ξ²0 π
0(7Ξ)
Ξ±0Ξ²0
Ο0
π―π:π πΈπ:π Ξ±1Ξ²1 π
1(7Ξ)
πΈπ:π π―π:π πΈπ:π πΈπ:π π―π:π π―π:π π―π:π π―π:π π12
β² (7Ξ)
(6Ξ)π04
β²
(7Ξ)π02
β²
π11
β² (7Ξ)
π03
β² (5Ξ)
π01
β² (7Ξ)
(6Ξ)π13
β²
πΈπ:π
π‘0
β²
π‘1
β²
pgh pgh pgh pgh pgh pgh pgh
π£1 π€1 π£2 π€2 π£3 π€3 π£4 π€4 π£5 π€5 π£6 π€6 π£7 π€7
π 12, π 12 π 11, π 11 HA HA HA HA HA HA HA HA
π0 π0 π1 π1 π2 π2 π3 π3 π4 π4 π5 π5 π6 π6 π7 π7 π£0 π‘7
β²
π‘6
β²
π‘5
β²
π‘4
β²
π‘3
β²
π‘2
β²
π7 π6 π5 π4 π3 π2
(ππ:π, ππ:π)
π + π πππ π π
π2, (( πβ², πβ²
11 β πβ², πβ² 12) β ( π, π 7 β π, π 6)) β (( π, π 5 β (π, π)4) β ((π, π)3β (π, π)2))
π3, (((π, π)2β πβ², πβ²
11) β ( πβ², πβ² 12 β (π, π)7)) β (((π, π)6β (π, π)5) β ((π, π)4β (π, π)3))
π4, π, π 3 β π, π 2 β πβ², πβ² 11 β πβ², πβ² 12 β (((π, π)7β (π, π)6) β ((π, π)5β (π, π)4)) π5, (( π, π 4 β π, π 3) β ( π, π 2 β πβ², πβ²
11)) β (( πβ², πβ² 12 β (π, π)7) β ((π, π)6β (π, π)5))
π6, (( π, π 5 β (π, π)4) β ((π, π)3β (π, π)2)) β (( πβ², πβ² 11 β πβ², πβ² 12) β ( π, π 7 β (π, π)6)) π7, π, π 6 β π, π 5 β π, π 4 β π, π 3 β (((π, π)2β πβ², πβ²
11) β ( πβ², πβ² 12 β (π7, 1)))
18/22
19/22
RPP SYNTHESIS RESULTS π = ππ π = π
Design(RPP) Delay Area Power ππ Ratio πππ Ratio ππ Ratio D3 0.76 1.00 25318 1.00 0.682 1.00 D1 [1] 0.59 0.77 10128 0.40 0.328 0.48 2π β 3 [2] 0.72 0.94 13227 0.52 0.467 0.68 Design(RPP) Delay Area Power ππ Ratio πππ Ratio ππ Ratio D3 0.81 1.00 42043 1.00 1.19 1.00 D1 [1] 0.72 0.88 23776 0.56 0.716 0.60 2π β 3 [2] 0.78 0.96 30637 0.73 1.01 0.85
[1] Jaberipur,2011 [2] Jaberipur,2015
20/22
SYNTHESIS RESULTS FOR π = ππ SYNTHESIS RESULTS FOR π = π DELAY AND AREA MEASURES
Design(TPP) Delay(π ) Area (# of gates) D3
(5 + 2 log π) 3π πππ π + 15π + 39
D1 [1]
(3 + 2 log π) 3π πππ π + 12π β 1
2π β 3 [2]
(4 + 2 log π) 3π πππ π + 12π + 4 Design(TPP) Delay Area Power ππ Ratio πππ Ratio ππ Ratio D3 0.65 1.00 30686 1.00 0.956 1.00 D1 [1] 0.57 0.88 14227 0.46 0.375 0.39 2π β 3 [2] 0.64 0.98 14152 0.46 0.500 0.52 Design(TPP) Delay Area Power ππ Ratio πππ Ratio ππ Ratio D3 0.73 1.00 51121 1.00 1.60 1.00 D1 [1] 0.64 0.88 34441 0.67 0.939 0.59 2π β 3 [2] 0.73 1.00 32712 0.64 1.081 0.67
[1] Jaberipur,2011 [2] Jaberipur,2015
ο΄ Implemented the required parallel prefix (RPP and TPP architectures) adders based on the novel diminished-3 representation of residues in {3,2π + 2} and 2-bit {0,1,2} indicator ο΄ The adder delay is only 2Ξ more than the modulo-(2π + 1) diminished-1 adder, and 1Ξ more than that of the companion modulo-(2π β 3) adder ο΄ Same speed (synthesis result) for the proposed designs and those of the modulo-(2π β 3) adders ο΄ Area and Power overhead reduces as π grows larger
21/22