modulo parallel prefix addition via excess modulo
play

Modulo- Parallel Prefix Addition via Excess-Modulo Encoding - PowerPoint PPT Presentation

SBU - Tehran ENSL - Lyon Modulo- Parallel Prefix Addition via Excess-Modulo Encoding of Residues Seyed Hamed Fatemi Langroudi & Ghassem Jaberipur Computer Science & Engineering Department Shahid


  1. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ RNS in General 𝑗=π‘™βˆ’1 𝑆 = *𝑛 π‘™βˆ’1 , … , 𝑛 1 , 𝑛 0 }, 𝐸𝑆 = 𝑛 𝑙 𝑗=0 π‘Œπœ—π‘† , π‘Œ = ( π‘Œ 𝑛 π‘™βˆ’1 , … , π‘Œ 𝑛 1 , π‘Œ 𝑛 0 ) 𝑺 = *πŸ‘ 𝒐 βˆ’ 𝟐, πŸ‘ 𝒐 , πŸ‘ 𝒐 + 𝟐+ β€’ e.g. β€’ RNS Architecture β€’ RNS Advantage π‘œ O log( 𝑙 ) οƒ˜ Addition & Multiplication β€’ RNS Disadvantage οƒ˜ Comparison & Division β€’ RNS In Application οƒ˜ Digital Signal Processing 4 ARITH 22

  2. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ RNS in General 𝑗=π‘™βˆ’1 𝑆 = *𝑛 π‘™βˆ’1 , … , 𝑛 1 , 𝑛 0 }, 𝐸𝑆 = 𝑛 𝑙 𝑗=0 π‘Œπœ—π‘† , π‘Œ = ( π‘Œ 𝑛 π‘™βˆ’1 , … , π‘Œ 𝑛 1 , π‘Œ 𝑛 0 ) 𝑺 = *πŸ‘ 𝒐 βˆ’ 𝟐, πŸ‘ 𝒐 , πŸ‘ 𝒐 + 𝟐+ β€’ e.g. β€’ RNS Architecture β€’ RNS Advantage π‘œ O log( 𝑙 ) οƒ˜ Addition & Multiplication β€’ RNS Disadvantage οƒ˜ Comparison & Division β€’ RNS In Application οƒ˜ Digital Signal Processing οƒ˜ Fault Tolerant System 4 ARITH 22

  3. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ RNS in General 𝑗=π‘™βˆ’1 𝑆 = *𝑛 π‘™βˆ’1 , … , 𝑛 1 , 𝑛 0 }, 𝐸𝑆 = 𝑛 𝑙 𝑗=0 π‘Œπœ—π‘† , π‘Œ = ( π‘Œ 𝑛 π‘™βˆ’1 , … , π‘Œ 𝑛 1 , π‘Œ 𝑛 0 ) β€’ e.g. 𝑺 = *πŸ‘ 𝒐 βˆ’ 𝟐, πŸ‘ 𝒐 , πŸ‘ 𝒐 + 𝟐+ β€’ RNS Architecture β€’ RNS Advantage π‘œ οƒ˜ Addition & Multiplication O log( 𝑙 ) β€’ RNS Disadvantage οƒ˜ Comparison & Division β€’ RNS In Application οƒ˜ Digital Signal Processing οƒ˜ Fault Tolerant System οƒ˜ Cryptography 4 ARITH 22

  4. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 1 5 ARITH 22

  5. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 1 Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 1 π‘Œ + 𝑍 2 π‘œ βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 1 π‘Œ + 𝑍 + 1 2 π‘œ , 5 ARITH 22

  6. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 1 Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 1 π‘Œ + 𝑍 2 π‘œ βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 1 π‘Œ + 𝑍 + 1 2 π‘œ , RCA X Y C A Adder A  X Y 1 2 n C Adder B B   X Y 1 n n 2 2 1 0 Mux  X Y ο€­ n 2 1 5 ARITH 22

  7. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 1 EM Encoding Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 1 if π‘Œ + 𝑍 < 2 π‘œ π‘Œ + 𝑍 2 π‘œ βˆ’1 = π‘Œ + 𝑍, π‘Œ + 𝑍 2 π‘œ βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 1 if π‘Œ + 𝑍 β‰₯ 2 π‘œ π‘Œ + 𝑍 + 1 2 π‘œ , π‘Œ + 𝑍 + 1 2 π‘œ , RCA X Y C A Adder A  X Y 1 2 n C Adder B B   X Y 1 n n 2 2 1 0 Mux  X Y ο€­ n 2 1 5 ARITH 22

  8. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 1 EM Encoding Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 1 if π‘Œ + 𝑍 < 2 π‘œ π‘Œ + 𝑍 2 π‘œ βˆ’1 = π‘Œ + 𝑍, π‘Œ + 𝑍 2 π‘œ βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 1 if π‘Œ + 𝑍 β‰₯ 2 π‘œ π‘Œ + 𝑍 + 1 2 π‘œ , π‘Œ + 𝑍 + 1 2 π‘œ , RCA RCA X Y X Y C A Adder A  Adder X Y 1 2 n C out C Adder B B  X Y ο€­ n   2 1 X Y 1 n n 2 2 1 0 Mux  X Y ο€­ n 2 1 5 ARITH 22

  9. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization 6 ARITH 22

  10. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 6 ARITH 22

  11. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x y p g h οƒš οƒ… x y xy x y G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 6 ARITH 22

  12. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x   y G P , p g h   οƒš οƒ… G P , x y xy x y G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 6 ARITH 22

  13. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x   y     G P , , G , P G P r r p g h   οƒš οƒ… G P , x y xy x y οƒš ( G P G ) r G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 6 ARITH 22

  14. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x   y         G P , , G , P G , P G , P G P r r r r p g h   οƒš οƒ… G P , x y xy x y οƒš οƒš ( G P G , P P ) ( G P G ) r r r G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 6 ARITH 22

  15. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x   y         G P , , G , P G , P G , P G P r r r r p g h   οƒš οƒ… G P , x y xy x y οƒš οƒš ( G P G , P P ) ( G P G ) r r r G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 Modulo- 2 π‘œ βˆ’ 1 EM Encoding Parallel prefix Adder 6 ARITH 22

  16. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x   y         G P , , G , P G , P G , P G P r r r r p g h   οƒš οƒ… G P , x y xy x y οƒš οƒš ( G P G , P P ) ( G P G ) r r r G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 Modulo- 2 π‘œ βˆ’ 1 EM Encoding x 7 y 7 x 6 y 6 x 5 y 5 y 4 y 0 x 4 x 3 y 3 y 2 y 1 x 0 x 2 x 1 Parallel prefix Adder pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 3 h 2 h 1 h 0 G 7:0 ( G 6:0 , P 6:0 ) ( G 5:0 , P 5:0 )( G 4:0 , P 4:0 ) ( G 3:0 , P 3:0 ) ( G 2:0 , P 2:0 )( G 1:0 , P 1:0 ) ( G 0:0 , P 0:0 ) c 7 c 6 c 2 c 5 c 4 c 3 c 1 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 6 ARITH 22

  17. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization y 7 x 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 x 1 y 1 x 0 y 0 x 3 x 2 Parallel Prefix Network(PPN) pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) x   y         G P , , G , P G , P G , P G P r r r r p g h   οƒš οƒ… G P , x y xy x y οƒš οƒš ( G P G , P P ) ( G P G ) r r r G 6:0 G 5:0 G 7:0 G 4:0 G 3:0 G 2:0 G 1:0 G 0:0 Modulo- 2 π‘œ βˆ’ 1 EM Encoding x 7 y 7 x 6 y 6 x 5 y 5 y 4 y 0 x 4 x 3 y 3 y 2 y 1 x 0 x 2 x 1 Parallel prefix Adder pgh pgh pgh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 3 h 2 h 1 h 0 G 7:0 ( G 6:0 , P 6:0 ) ( G 5:0 , P 5:0 )( G 4:0 , P 4:0 ) ( G 3:0 , P 3:0 ) ( G 2:0 , P 2:0 )( G 1:0 , P 1:0 ) ( G 0:0 , P 0:0 ) c 7 c 6 c 2 c 5 c 4 c 3 c 1 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 6 ARITH 22

  18. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue 7 ARITH 22

  19. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 3 7 ARITH 22

  20. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 3 Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 3 π‘Œ + 𝑍 2 π‘œ βˆ’3 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 3 π‘Œ + 𝑍 + 3 2 π‘œ , 7 ARITH 22

  21. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 3 Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 3 π‘Œ + 𝑍 2 π‘œ βˆ’3 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 3 π‘Œ + 𝑍 + 3 2 π‘œ , RCA X Y C A Adder A  X Y 3 2 n C Adder B B   X Y 3 n n 2 2 1 0 Mux  X Y ο€­ n 2 3 7 ARITH 22

  22. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 3 Conventional EM Encoding if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 3 if π‘Œ + 𝑍 < 2 π‘œ π‘Œ + 𝑍 2 π‘œ βˆ’3 = π‘Œ + 𝑍, π‘Œ + 𝑍 2 π‘œ βˆ’3 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 3 if π‘Œ + 𝑍 β‰₯ 2 π‘œ π‘Œ + 𝑍 + 3 2 π‘œ , π‘Œ + 𝑍 + 3 2 π‘œ , RCA X Y C A Adder A  X Y 3 2 n C Adder B B   X Y 3 n n 2 2 1 0 Mux  X Y ο€­ n 2 3 7 ARITH 22

  23. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 3 Conventional EM Encoding if π‘Œ + 𝑍 < 2 π‘œ βˆ’ 3 if π‘Œ + 𝑍 < 2 π‘œ π‘Œ + 𝑍 2 π‘œ βˆ’3 = π‘Œ + 𝑍, π‘Œ + 𝑍 2 π‘œ βˆ’3 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ 3 if π‘Œ + 𝑍 β‰₯ 2 π‘œ π‘Œ + 𝑍 + 3 2 π‘œ , π‘Œ + 𝑍 + 3 2 π‘œ , RCA RCA X Y X Y C A Adder A  n -bit Adder X Y 3 2 n  X Y C out n 2 C Adder B B   X Y 3 ( n ,2)-bit Adder n n 2 2  1 0 Mux X Y ο€­ n 2 3  X Y ο€­ n 2 3 7 ARITH 22

  24. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue 8 ARITH 22

  25. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization 8 ARITH 22

  26. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 3 EM Encoding Parallel prefix Adder 8 ARITH 22

  27. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 3 EM Encoding Parallel prefix Adder y 7 x 7 x 6 y 6 x 5 y 5 y 4 y 0 x 4 x 3 y 3 y 2 y 1 x 0 x 2 x 1 pgh pgh pgh pgh pgh pgh pgh pgh a a a a a a a a h 7 h 6 h 5 h 4 h 3 h 2 h 1 h 0 a G ο‚’ a a a a a a c c c c c c c 7 7:0 6 5 4 3 2 1 G ο‚’ G ο‚’ 0 w 7 w 6 0 w 5 0 0 w 4 w 3 0 0 w 1 w 0 w 2 7:0 7:0 pgh pgh pgh pgh pgh pgh pgh pgh b b b b h 7 h 6 h 5 h 4 h 3 b h 2 b h 1 b b h 0 b b b b b b b c c c c c G c c 5 4 3 1 7 6 2 7:0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 8 ARITH 22

  28. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 3 EM Encoding Parallel prefix Adder y 7 x 7 x 6 y 6 x 5 y 5 y 4 y 0 x 4 x 3 y 3 y 2 y 1 x 0 x 2 x 1 pgh pgh pgh pgh pgh pgh pgh pgh a a a a a a a a h 7 h 6 h 5 h 4 h 3 h 2 h 1 h 0 a G ο‚’ a a a a a a c c c c c c c 7 7:0 6 5 4 3 2 1 G ο‚’ G ο‚’ 0 w 7 w 6 0 w 5 0 0 w 4 w 3 0 0 w 1 w 0 w 2 7:0 7:0 pgh pgh pgh pgh pgh pgh pgh pgh b b b b h 7 h 6 h 5 h 4 h 3 b h 2 b h 1 b b h 0 b b b b b b b c c c c c G c c 5 4 3 1 7 6 2 7:0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 8 ARITH 22

  29. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 3 EM Encoding Parallel prefix Adder y 7 x 7 y 6 x 6 y 5 x 5 y 4 x 4 y 3 x 3 y 2 x 2 y 1 x 1 y 0 x 0 HA HA HA HA HA HA HA HA u 7 v 7 u 6 v 6 u 5 v 5 u 4 v 4 u 3 v 3 u 2 v 2 u 1 v 1 u 0 v 8 pgβ€²h pΒ΄gh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 3 h 2 h 1 ( g 7 , p 7 ) ( g 1 , p β€² ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) 1 ) ( G 5:0 , P β€² ( G 6:0 , P ' ( G 4:0 , P β€² ( G 3:0 , P β€² ( G 2:0 , P β€² 6:0 ) 5:0 ) ( G 1:0 , P β€² 4:0 ) 3:0 ) 2:0 ) 1:0 ) G ' 7:0 c 7 c 6 c 5 c 4 c 2 c 3 c 1 h 0 s 0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 v   G P   G P  u v u v u      x y 0 7 v G P , , G P , , G P , 1 1 8 7 u r r r r HA pΒ΄ g h p gΒ΄ h p g h οƒ… οƒš οƒš   οƒ…   xy οƒš οƒš οƒ… οƒš οƒ… οƒš οƒš x y u v u u v u v G P G , P P u v u v uv G P , G P G uv v u v u v r r r 0 1 1 1 1 1 1 7 7 7 7 8 7 7 8 ARITH 22

  30. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 3 EM Encoding Parallel prefix Adder y 7 x 7 y 6 x 6 y 5 x 5 y 4 x 4 y 3 x 3 y 2 x 2 y 1 x 1 y 0 x 0 HA HA HA HA HA HA HA HA u 7 v 7 u 6 v 6 u 5 v 5 u 4 v 4 u 3 v 3 u 2 v 2 u 1 v 1 u 0 v 8 pgβ€²h pΒ΄gh pgh pgh pgh pgh pgh h 7 h 6 h 5 h 4 h 3 h 2 h 1 ( g 7 , p 7 ) ( g 1 , p β€² ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 4 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) 1 ) ( G 5:0 , P β€² ( G 6:0 , P ' ( G 4:0 , P β€² ( G 3:0 , P β€² ( G 2:0 , P β€² 6:0 ) 5:0 ) ( G 1:0 , P β€² 4:0 ) 3:0 ) 2:0 ) 1:0 ) G ' 7:0 c 7 c 6 c 5 c 4 c 2 c 3 c 1 h 0 s 0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 v   G P   G P  u v u v u      x y 0 7 v G P , , G P , , G P , 1 1 8 7 u r r r r HA pΒ΄ g h p gΒ΄ h p g h οƒ… οƒš οƒš   οƒ…   xy οƒš οƒš οƒ… οƒš οƒ… οƒš οƒš x y u v u u v u v G P G , P P u v u v uv G P , G P G uv v u v u v r r r 0 1 1 1 1 1 1 7 7 7 7 8 7 7 8 ARITH 22

  31. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue 9 ARITH 22

  32. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 9 ARITH 22

  33. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ (2 π‘Ÿ + 1) π‘Œ + 𝑍 2 π‘œ βˆ’2 q βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ (2 π‘Ÿ + 1) π‘Œ + 𝑍 + 2 q + 1 2 π‘œ , 9 ARITH 22

  34. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 Conventional if π‘Œ + 𝑍 < 2 π‘œ βˆ’ (2 π‘Ÿ + 1) π‘Œ + 𝑍 2 π‘œ βˆ’2 q βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ (2 π‘Ÿ + 1) π‘Œ + 𝑍 + 2 q + 1 2 π‘œ , RCA X Y C A Adder A q   X Y 2 1 2 n C Adder B B    q 1 X Y 2 n 2 n 2 1 0 Mux  X Y ο€­ ο€­ n q 2 2 1 9 ARITH 22

  35. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 Conventional EM Encoding if π‘Œ + 𝑍 < 2 π‘œ βˆ’ (2 π‘Ÿ + 1) if π‘Œ + 𝑍 < 2 π‘œ π‘Œ + 𝑍 2 π‘œ βˆ’2 q βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ (2 π‘Ÿ + 1) π‘Œ + 𝑍 2 π‘œ βˆ’2 q βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ π‘Œ + 𝑍 + 2 q + 1 2 π‘œ , π‘Œ + 𝑍 + 2 q + 1 2 π‘œ , RCA X Y C A Adder A q   X Y 2 1 2 n C Adder B B    q 1 X Y 2 n 2 n 2 1 0 Mux  X Y ο€­ ο€­ n q 2 2 1 9 ARITH 22

  36. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 Conventional EM Encoding if π‘Œ + 𝑍 < 2 π‘œ βˆ’ (2 π‘Ÿ + 1) if π‘Œ + 𝑍 < 2 π‘œ π‘Œ + 𝑍 2 π‘œ βˆ’2 q βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ βˆ’ (2 π‘Ÿ + 1) π‘Œ + 𝑍 2 π‘œ βˆ’2 q βˆ’1 = π‘Œ + 𝑍, if π‘Œ + 𝑍 β‰₯ 2 π‘œ π‘Œ + 𝑍 + 2 q + 1 2 π‘œ , π‘Œ + 𝑍 + 2 q + 1 2 π‘œ , RCA RCA X Y X Y C A Adder A q  n -bit Adder  X Y 2 1 2 n  X Y C out n 2 C Adder B B    q ( n , q+ 1)-bit Adder 1 X Y 2 n 2 n 2  1 0 X Y Mux ο€­ ο€­ n q 2 2 1  X Y ο€­ ο€­ n q 2 2 1 9 ARITH 22

  37. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization 10 ARITH 22

  38. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 EM Parallel prefix Adder( π‘œ = 8, π‘Ÿ = 4) 10 ARITH 22

  39. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 EM Parallel prefix Adder( π‘œ = 8, π‘Ÿ = 4) x 7 y 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 y 1 y 0 x 3 x 2 x 1 x 0 pgh pgh pgh pgh pgh pgh pgh pgh a a a a a a a a h 7 h 6 h 5 h 4 h 3 h 2 h 1 h 0 a G ο‚’ a a a a a a c c c c c c c 7 7:0 6 5 4 1 3 2 0 G ο‚’ G ο‚’ w 7 0 0 w 6 w 5 w 4 0 0 0 w 0 w 3 w 2 w 1 7:0 7:0 pgh pgh pgh pgh pgh pgh pgh pgh b h 7 h 6 b b b b b b b h 5 h 4 h 3 h 2 h 1 h 0 b b b b b b b c c c c c c c G 6 5 4 3 2 1 7:0 7 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 10 ARITH 22

  40. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Parallel Prefix Realization Modulo- 2 π‘œ βˆ’ 2 π‘Ÿ βˆ’ 1 EM Parallel prefix Adder( π‘œ = 8, π‘Ÿ = 4) x 7 y 7 y 6 y 5 x 6 x 5 x 4 y 4 y 3 y 2 y 1 y 0 x 3 x 2 x 1 x 0 pgh pgh pgh pgh pgh pgh pgh pgh a a a a a a a a h 7 h 6 h 5 h 4 h 3 h 2 h 1 h 0 a G ο‚’ a a a a a a c c c c c c c 7 7:0 6 5 4 1 3 2 0 G ο‚’ G ο‚’ w 7 0 0 w 6 w 5 w 4 0 0 0 w 0 w 3 w 2 w 1 7:0 7:0 pgh pgh pgh pgh pgh pgh pgh pgh b h 7 h 6 b b b b b b b h 5 h 4 h 3 h 2 h 1 h 0 b b b b b b b c c c c c c c G 6 5 4 3 2 1 7:0 7 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 10 ARITH 22

  41. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 11 ARITH 22

  42. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 … … 𝒀 + 𝒁 𝐱 π¨βˆ’πŸ 𝐱 𝟐 𝒙 𝟏 𝒙 𝒐 𝐱 𝐫 𝑭𝑩𝑫 = 11 ARITH 22

  43. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝜺 = 2 q + 1 𝜺 𝑭𝑩𝑫 𝒙 𝒐 𝒙 𝒐 … … 𝑻 𝐓 π¨βˆ’πŸ 𝐓 𝟐 𝑻 𝟏 𝐓 𝐫 11 ARITH 22

  44. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝜺 = 2 q + 1 𝜺 𝑭𝑩𝑫 𝒙 𝒐 𝒙 𝒐 … … 𝑻 𝐓 π¨βˆ’πŸ 𝐓 𝟐 𝑻 𝟏 𝐓 𝐫 (𝑓. 𝑕. π‘œ = 8 π‘Ÿ = 4) 11 ARITH 22

  45. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝜺 = 2 q + 1 𝜺 𝑭𝑩𝑫 𝒙 𝒐 𝒙 𝒐 … … 𝑻 𝐓 π¨βˆ’πŸ 𝐓 𝟐 𝑻 𝟏 𝐓 𝐫 (𝑓. 𝑕. π‘œ = 8 π‘Ÿ = 4) Collective value 𝐷 π‘Ÿ+1 Input (𝑦 π‘Ÿ , 𝑧 π‘Ÿ , π‘₯ π‘œ , 𝐷 π‘Ÿ ) π‘Œ = 10010001 4 2 𝑍 = 10011111 11 ARITH 22

  46. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝜺 = 2 q + 1 𝜺 𝑭𝑩𝑫 𝒙 𝒐 𝒙 𝒐 … … 𝑻 𝐓 π¨βˆ’πŸ 𝐓 𝟐 𝑻 𝟏 𝐓 𝐫 (𝑓. 𝑕. π‘œ = 8 π‘Ÿ = 4) Collective value 𝐷 π‘Ÿ+1 Input (𝑦 π‘Ÿ , 𝑧 π‘Ÿ , π‘₯ π‘œ , 𝐷 π‘Ÿ ) π‘Œ = 10010001 4 2 𝑍 = 10011111 π‘Œ = 10010000 3 1 𝑍 = 10011110 11 ARITH 22

  47. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue … … 𝒀 π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝜺 = 2 q + 1 𝜺 𝑭𝑩𝑫 𝒙 𝒐 𝒙 𝒐 … … 𝑻 𝐓 π¨βˆ’πŸ 𝐓 𝟐 𝑻 𝟏 𝐓 𝐫 (𝑓. 𝑕. π‘œ = 8 π‘Ÿ = 4) Collective value 𝐷 π‘Ÿ+1 Input (𝑦 π‘Ÿ , 𝑧 π‘Ÿ , π‘₯ π‘œ , 𝐷 π‘Ÿ ) π‘Œ = 10010001 4 2 Problem: Variable -weight 𝑍 = 10011111 carry on position 4 π‘Œ = 10010000 3 1 𝑍 = 10011110 11 ARITH 22

  48. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? 12 ARITH 22

  49. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 12 ARITH 22

  50. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ 12 ARITH 22

  51. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ 𝒀′ β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒁′ 12 ARITH 22

  52. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … π’š 𝟏 𝒀′ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’š π’“βˆ’πŸ … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 12 ARITH 22

  53. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 12 ARITH 22

  54. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 β€² 𝑓 = 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 12 ARITH 22

  55. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ β€² 𝑓 = 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ 𝜺 𝑭𝑩𝑫 𝒇 𝒇 12 ARITH 22

  56. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ β€² 𝑓 = 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² β€² β€² β€² … … β€² π’Š π¨βˆ’πŸ π’Š 𝟐 π’Š 𝟏 π’Š 𝒓 π’Š π«βˆ’πŸ … … 𝒅 π’βˆ’πŸ 𝒅 𝟐 𝒅 𝟏 𝒅 𝒓 𝒅 π’“βˆ’πŸ 12 ARITH 22

  57. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ β€² 𝑓 = 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² β€² β€² β€² … … β€² π’Š π¨βˆ’πŸ π’Š 𝟐 π’Š 𝟏 π’Š 𝒓 π’Š π«βˆ’πŸ … … 𝒅 π’βˆ’πŸ 𝒅 𝟐 𝒅 𝟏 𝒅 𝒓 𝒅 π’“βˆ’πŸ … … 𝑻 𝒕 π’βˆ’πŸ 𝒕 𝟐 𝒕 𝟏 𝒕 𝒓 𝒕 π’“βˆ’πŸ 12 ARITH 22

  58. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ β€² 𝑓 = 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² β€² β€² β€² … … β€² π’Š π¨βˆ’πŸ π’Š 𝟐 π’Š 𝟏 π’Š 𝒓 π’Š π«βˆ’πŸ … … 𝒅 π’βˆ’πŸ 𝒅 𝟐 𝒅 𝟏 𝒅 𝒓 𝒅 π’“βˆ’πŸ … … 𝑻 𝒕 π’βˆ’πŸ 𝒕 𝟐 𝒕 𝟏 𝒕 𝒓 𝒕 π’“βˆ’πŸ β€² 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 β€² β€² β€² 𝐻 π‘—βˆ’1:0 ∨ 𝑄 (𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 ), if 1 ≀ 𝑗 ≀ π‘Ÿ π‘—βˆ’1:0 π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝑑 𝑗 = β„Ž π‘Ÿ ∨ 𝑓 𝑑 π‘Ÿ ∨ β„Ž π‘Ÿ 𝑓, if 𝑗 = π‘Ÿ + 1 β€² β€² 𝐻 π‘—βˆ’1:π‘Ÿ+1 ∨ 𝑄 π‘—βˆ’1:π‘Ÿ+1 𝑑 π‘Ÿ+1 , if 𝑗 > π‘Ÿ + 1 12 ARITH 22

  59. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue β€’ How to solve variable-weight carry problem? οƒ˜ Devise a partial carry-save preprocessing stage 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … π’š 𝟏 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 β„Ž 𝑗 = 𝑦 𝑗 ⨁𝑧 𝑗 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝑕 𝑗 = 𝑦 𝑗 𝑧 𝑗 𝒛 𝟏 𝒁′ 𝒉 π’βˆ’πŸ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 π’“βˆ’πŸ 0 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ β€² 𝑓 = 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² β€² β€² β€² … … β€² π’Š π¨βˆ’πŸ π’Š 𝟐 π’Š 𝟏 π’Š 𝒓 π’Š π«βˆ’πŸ … … 𝒅 π’βˆ’πŸ 𝒅 𝟐 𝒅 𝟏 𝒅 𝒓 𝒅 π’“βˆ’πŸ … … 𝑻 𝒕 π’βˆ’πŸ 𝒕 𝟐 𝒕 𝟏 𝒕 𝒓 𝒕 π’“βˆ’πŸ β€² 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 Problem: Carry-save β€² β€² β€² 𝐻 π‘—βˆ’1:0 ∨ 𝑄 (𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 ), if 1 ≀ 𝑗 ≀ π‘Ÿ Stage is on the π‘—βˆ’1:0 π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝑑 𝑗 = β„Ž π‘Ÿ ∨ 𝑓 𝑑 π‘Ÿ ∨ β„Ž π‘Ÿ 𝑓, if 𝑗 = π‘Ÿ + 1 critical delay path β€² β€² 𝐻 π‘—βˆ’1:π‘Ÿ+1 ∨ 𝑄 π‘—βˆ’1:π‘Ÿ+1 𝑑 π‘Ÿ+1 , if 𝑗 > π‘Ÿ + 1 12 ARITH 22

  60. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue 81 13 ARITH 22 IWSSIP 2014

  61. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? 82 13 ARITH 22 IWSSIP 2014

  62. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? οƒ˜ Finding a relative between the 𝐻, 𝑄 of π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 and 𝐻′, 𝑄′ of π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ (𝐻, 𝑄) … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ (𝐻 β€² , 𝑄 β€² ) 𝜺 𝑭𝑩𝑫 𝒇 𝒇 83 13 ARITH 22 IWSSIP 2014

  63. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? οƒ˜ Finding a relative between the 𝐻, 𝑄 of π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 and 𝐻′, 𝑄′ of π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ (𝐻, 𝑄) … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ β€² β€² (𝑯 𝒋:π’Œ+𝟐 , 𝑸 𝒋:π’Œ+𝟐 π’Š π’Œ ) = (π’Š 𝒋 𝑯 π’‹βˆ’πŸ:π’Œ , 𝑰 𝒋:π’Œ ) π’Œ β‰₯ 𝒓 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ (𝐻 β€² , 𝑄 β€² ) 𝜺 𝑭𝑩𝑫 𝒇 𝒇 84 13 ARITH 22 IWSSIP 2014

  64. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? οƒ˜ Finding a relative between the 𝐻, 𝑄 of π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 and 𝐻′, 𝑄′ of π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ (𝐻, 𝑄) … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ β€² β€² (𝑯 𝒋:π’Œ+𝟐 , 𝑸 𝒋:π’Œ+𝟐 π’Š π’Œ ) = (π’Š 𝒋 𝑯 π’‹βˆ’πŸ:π’Œ , 𝑰 𝒋:π’Œ ) π’Œ β‰₯ 𝒓 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ (𝐻 β€² , 𝑄 β€² ) 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 β€² β€² β€² 𝐻 π‘—βˆ’1:0 ∨ 𝑄 (𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 ), if 1 ≀ 𝑗 ≀ π‘Ÿ π‘—βˆ’1:0 𝑑 𝑗 = β„Ž π‘Ÿ ∨ 𝑓 𝑑 π‘Ÿ ∨ β„Ž π‘Ÿ 𝑓, if 𝑗 = π‘Ÿ + 1 β€² β€² 𝐻 π‘—βˆ’1:π‘Ÿ+1 ∨ 𝑄 π‘—βˆ’1:π‘Ÿ+1 𝑑 π‘Ÿ+1 , if 𝑗 > π‘Ÿ + 1 85 13 ARITH 22 IWSSIP 2014

  65. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? οƒ˜ Finding a relative between the 𝐻, 𝑄 of π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 and 𝐻′, 𝑄′ of π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ (𝐻, 𝑄) … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ β€² β€² (𝑯 𝒋:π’Œ+𝟐 , 𝑸 𝒋:π’Œ+𝟐 π’Š π’Œ ) = (π’Š 𝒋 𝑯 π’‹βˆ’πŸ:π’Œ , 𝑰 𝒋:π’Œ ) π’Œ β‰₯ 𝒓 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ (𝐻 β€² , 𝑄 β€² ) 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 β€² β€² β€² 𝐻 π‘—βˆ’1:0 ∨ 𝑄 (𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 ), if 1 ≀ 𝑗 ≀ π‘Ÿ π‘—βˆ’1:0 𝑑 𝑗 = β„Ž π‘Ÿ ∨ 𝑓 𝑑 π‘Ÿ ∨ β„Ž π‘Ÿ 𝑓, if 𝑗 = π‘Ÿ + 1 β€² β€² 𝐻 π‘—βˆ’1:π‘Ÿ+1 ∨ 𝑄 π‘—βˆ’1:π‘Ÿ+1 𝑑 π‘Ÿ+1 , if 𝑗 > π‘Ÿ + 1 86 13 ARITH 22 IWSSIP 2014

  66. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? οƒ˜ Finding a relative between the 𝐻, 𝑄 of π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 and 𝐻′, 𝑄′ of π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ (𝐻, 𝑄) … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ β€² β€² (𝑯 𝒋:π’Œ+𝟐 , 𝑸 𝒋:π’Œ+𝟐 π’Š π’Œ ) = (π’Š 𝒋 𝑯 π’‹βˆ’πŸ:π’Œ , 𝑰 𝒋:π’Œ ) π’Œ β‰₯ 𝒓 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ (𝐻 β€² , 𝑄 β€² ) 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 β€² β€² β€² 𝐻 π‘—βˆ’1:0 ∨ 𝑄 (𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 ), if 1 ≀ 𝑗 ≀ π‘Ÿ 𝐻 π‘—βˆ’1:0 ∨ 𝑄 π‘—βˆ’1:0 𝐻 π‘œβˆ’1:0 , if 1 ≀ 𝑗 ≀ π‘Ÿ π‘—βˆ’1:0 𝑑 𝑗 = 𝑑 𝑗 = β€²β€² 𝐻 π‘œβˆ’1:0, β„Ž π‘Ÿ 𝐻 π‘Ÿβˆ’1:0 ∨ 𝑄 if 𝑗 = π‘Ÿ + 1 β„Ž π‘Ÿ ∨ 𝑓 𝑑 π‘Ÿ ∨ β„Ž π‘Ÿ 𝑓, if 𝑗 = π‘Ÿ + 1 π‘Ÿ:0 β€²β€² β€² β€² β„Ž π‘—βˆ’1 𝐻 π‘—βˆ’2:0 ∨ 𝑄 π‘—βˆ’1:0 𝐻 π‘œβˆ’1:0 , if 𝑗 > π‘Ÿ + 1 𝐻 π‘—βˆ’1:π‘Ÿ+1 ∨ 𝑄 π‘—βˆ’1:π‘Ÿ+1 𝑑 π‘Ÿ+1 , if 𝑗 > π‘Ÿ + 1 β€²β€² = β„Ž π‘Ÿ ∨ 𝑄 π‘Ÿβˆ’1:0 ∨ 𝐻 π‘Ÿβˆ’1:0 𝑄 π‘Ÿ:0 β€²β€² β€²β€² = 𝑄 β€²π‘—βˆ’1:π‘Ÿ+1 𝑄 𝑄 π‘—βˆ’1:0 π‘Ÿ:0 87 13 ARITH 22 IWSSIP 2014

  67. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue via Excess-Modulo Encoding of Residue β€’ How to solve Carry Save Stage Delay problem ? οƒ˜ Finding a relative between the 𝐻, 𝑄 of π‘Œ + 𝑍 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 and 𝐻′, 𝑄′ of π‘Œβ€² + 𝑍′′ 2 π‘œ βˆ’2 π‘Ÿ βˆ’1 𝒀 … … π’š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’š 𝒓 π’š π’“βˆ’πŸ (𝐻, 𝑄) … … 𝒁 𝒛 π’βˆ’πŸ 𝒛 𝟐 𝒛 𝟏 𝒛 𝒓 𝒛 π’“βˆ’πŸ β€² β€² (𝑯 𝒋:π’Œ+𝟐 , 𝑸 𝒋:π’Œ+𝟐 π’Š π’Œ ) = (π’Š 𝒋 𝑯 π’‹βˆ’πŸ:π’Œ , 𝑰 𝒋:π’Œ ) π’Œ β‰₯ 𝒓 … … 𝒀′ π’Š π’βˆ’πŸ π’š 𝟐 π’š 𝟏 π’Š 𝒓 π’š π’“βˆ’πŸ … … 𝒁′′ 𝒉 π’βˆ’πŸ‘ 𝒛 𝟐 𝒛 𝟏 𝒛 π’“βˆ’πŸ (𝐻 β€² , 𝑄 β€² ) 𝜺 𝑭𝑩𝑫 𝒇 𝒇 β€² 𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 𝐻 π‘œβˆ’1:0 , if 𝑗 = 0 β€² β€² β€² 𝐻 π‘—βˆ’1:0 ∨ 𝑄 (𝑕 π‘œβˆ’1 ∨ 𝐻 π‘œβˆ’1:0 ), if 1 ≀ 𝑗 ≀ π‘Ÿ 𝐻 π‘—βˆ’1:0 ∨ 𝑄 π‘—βˆ’1:0 𝐻 π‘œβˆ’1:0 , if 1 ≀ 𝑗 ≀ π‘Ÿ π‘—βˆ’1:0 𝑑 𝑗 = 𝑑 𝑗 = β€²β€² 𝐻 π‘œβˆ’1:0, β„Ž π‘Ÿ 𝐻 π‘Ÿβˆ’1:0 ∨ 𝑄 if 𝑗 = π‘Ÿ + 1 β„Ž π‘Ÿ ∨ 𝑓 𝑑 π‘Ÿ ∨ β„Ž π‘Ÿ 𝑓, if 𝑗 = π‘Ÿ + 1 π‘Ÿ:0 β€²β€² β€² β€² β„Ž π‘—βˆ’1 𝐻 π‘—βˆ’2:0 ∨ 𝑄 π‘—βˆ’1:0 𝐻 π‘œβˆ’1:0 , if 𝑗 > π‘Ÿ + 1 𝐻 π‘—βˆ’1:π‘Ÿ+1 ∨ 𝑄 π‘—βˆ’1:π‘Ÿ+1 𝑑 π‘Ÿ+1 , if 𝑗 > π‘Ÿ + 1 β€²β€² = β„Ž π‘Ÿ ∨ 𝑄 π‘Ÿβˆ’1:0 ∨ 𝐻 π‘Ÿβˆ’1:0 𝑄 π‘Ÿ:0 β€²β€² β€²β€² = 𝑄 β€²π‘—βˆ’1:π‘Ÿ+1 𝑄 The carry-save stage is effectively off the critical delay path 𝑄 π‘—βˆ’1:0 π‘Ÿ:0 88 13 ARITH 22 IWSSIP 2014

  68. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue 14 ARITH 22

  69. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo (2 8 βˆ’2 4 βˆ’ 1) y 5 x 5 y 4 x 4 y 3 x 3 y 2 x 2 y 1 x 1 y 0 x 0 y 7 x 7 y 6 x 6 y 6 x 6 y 5 x 5 y 4 x 4 π‘ž β€² pghpβ€²hβ€² pghpβ€²hβ€² pghhβ€² pgh pgh pgh pgh pgh β€² β€² β€² β„Ž 0 β„Ž 7 β„Ž 6 β„Ž 5 β„Ž 4 β„Ž 3 β„Ž 2 β„Ž 1 β€² β€² π‘ž 6 π‘ž 5 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 5 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) β€² β€² π‘ž 5 π‘ž 6 β„Ž 4 P 3:0 G 3:0 Eqn.8 β€²β€² 𝑸 πŸ“ : 𝟏 β€²β€² 𝑸 πŸ” : 𝟏 β€²β€² 𝑸 πŸ• : 𝟏 G 7:0 β€²β€² ) β€²β€² ) β€²β€² ) ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ’ : 𝟏 ) ( 𝑯 πŸ‘ : 𝟏 , 𝑸 πŸ‘ : 𝟏 ) ( 𝑯 𝟐 : 𝟏 , 𝑸 𝟐 : 𝟏 ) ( 𝑯 𝟏 : 𝟏 , 𝑸 𝟏 : 𝟏 ) ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ“ : 𝟏 ( 𝑯 πŸ” : 𝟏 , 𝑸 πŸ• : 𝟏 ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ” : 𝟏 h 6 h 5 c 1 c 7 c 2 c 3 c 6 c 5 c 4 s 0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 x ο€­ y ο€­ x x ο€­ x y y x y y ο€­ i i i i 1 i 1 i i i i 1 i 1 p g h p’ h β€² p g h p g h h β€² οƒš   οƒš οƒ… οƒš οƒ… οƒ… οƒ… οƒ… οƒ… οƒ… x y οƒ… οƒš x y x y x y x y x y x y x y x y x y x y x y x y x y x y ο€­ ο€­ i i ο€­ ο€­ i i i i i i i i ο€­ ο€­ i i i i i i i 1 i 1 i i i 1 i 1 i i i i i i i 1 i 1   G P             ο‚’ ο‚’ G P , , G P , G P , G P , G P , p G P , p r r r r h 5 r r 6 4 h P G i 3:0 3:0 Eqn.8     ο‚’ο‚’ ο‚’ο‚’   οƒš ο‚’ο‚’ οƒš οƒš P h G P G P P G P G G P G , P P G P , r r i r 6:0 4:0 r 5:0 14 ARITH 22

  70. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo (2 8 βˆ’2 4 βˆ’ 1) Modulo (2 8 βˆ’1) y 5 x 5 y 4 x 4 y 3 x 3 y 2 x 2 y 1 x 1 y 0 x 0 y 7 x 7 y 6 x 6 x 7 y 7 x 6 y 6 x 5 y 5 y 4 y 0 x 4 y 3 y 2 y 1 x 0 x 3 x 2 x 1 y 6 x 6 y 5 x 5 y 4 x 4 π‘ž β€² pghpβ€²hβ€² pghpβ€²hβ€² pghhβ€² pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh β€² β€² β€² β„Ž 0 β„Ž 7 β„Ž 6 β„Ž 5 β„Ž 4 β„Ž 3 β„Ž 2 β„Ž 1 h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 β€² β€² π‘ž 6 π‘ž 5 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 5 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) β€² β€² π‘ž 5 π‘ž 6 β„Ž 4 P 3:0 G 3:0 Eqn.8 β€²β€² 𝑸 πŸ“ : 𝟏 β€²β€² 𝑸 πŸ” : 𝟏 β€²β€² 𝑸 πŸ• : 𝟏 G 7:0 G 7:0 ( G 6:0 , P 6:0 ) ( G 5:0 , P 5:0 )( G 4:0 , P 4:0 ) ( G 3:0 , P 3:0 ) ( G 2:0 , P 2:0 )( G 1:0 , P 1:0 ) ( G 0:0 , P 0:0 ) β€²β€² ) β€²β€² ) β€²β€² ) ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ’ : 𝟏 ) ( 𝑯 πŸ‘ : 𝟏 , 𝑸 πŸ‘ : 𝟏 ) ( 𝑯 𝟐 : 𝟏 , 𝑸 𝟐 : 𝟏 ) ( 𝑯 𝟏 : 𝟏 , 𝑸 𝟏 : 𝟏 ) ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ“ : 𝟏 ( 𝑯 πŸ” : 𝟏 , 𝑸 πŸ• : 𝟏 ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ” : 𝟏 h 6 h 5 c 1 c 7 c 2 c 3 c 7 c 6 c 5 c 4 c 6 c 5 c 4 c 3 c 2 c 1 s 0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 x ο€­ y ο€­ x x ο€­ x y y x y y ο€­ i i i i 1 i 1 i i i i 1 i 1           x p g h p’ h β€² y p g h p g h h β€² G P , G , P G , P G , P G , P r r r r οƒš   οƒš οƒ… οƒš οƒ… οƒ… οƒ… οƒ… οƒ… οƒ… x y οƒ… οƒš x y x y x y x y x y x y x y x y x y x y x y p g h x y x y x y ο€­ ο€­ i i ο€­ ο€­ i i i i i i i i ο€­ ο€­ i i i i i i i 1 i 1 i i i 1 i 1 i i i i i i i 1 i 1   G P             ο‚’ ο‚’ G P , , G P , G P , G P , G P , p G P , p   r r r r h 5 r r οƒš   οƒš 6 οƒ… 4 οƒš G P , G P G x y xy x y h P G P G , P P G r i 3:0 r r 3:0 Eqn.8     ο‚’ο‚’ ο‚’ο‚’   οƒš ο‚’ο‚’ οƒš οƒš P h G P G P P G P G G P G , P P G P , r r i r 6:0 4:0 r 5:0 14 ARITH 22

  71. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Modulo (2 8 βˆ’2 4 βˆ’ 1) Modulo (2 8 βˆ’1) y 5 x 5 y 4 x 4 y 3 x 3 y 2 x 2 y 1 x 1 y 0 x 0 y 7 x 7 y 6 x 6 x 7 y 7 x 6 y 6 x 5 y 5 y 4 y 0 x 4 y 3 y 2 y 1 x 0 x 3 x 2 x 1 y 6 x 6 y 5 x 5 y 4 x 4 π‘ž β€² pghpβ€²hβ€² pghpβ€²hβ€² pghhβ€² pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh pgh β€² β€² β€² β„Ž 0 β„Ž 7 β„Ž 6 β„Ž 5 β„Ž 4 β„Ž 3 β„Ž 2 β„Ž 1 h 7 h 6 h 5 h 4 h 1 h 3 h 2 h 0 β€² β€² π‘ž 6 π‘ž 5 ( g 7 , p 7 ) ( g 6 , p 6 ) ( g 5 , p 5 ) ( g 5 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) β€² β€² π‘ž 5 π‘ž 6 β„Ž 4 P 3:0 G 3:0 Eqn.8 β€²β€² 𝑸 πŸ“ : 𝟏 β€²β€² 𝑸 πŸ” : 𝟏 β€²β€² 𝑸 πŸ• : 𝟏 G 7:0 G 7:0 ( G 6:0 , P 6:0 ) ( G 5:0 , P 5:0 )( G 4:0 , P 4:0 ) ( G 3:0 , P 3:0 ) ( G 2:0 , P 2:0 )( G 1:0 , P 1:0 ) ( G 0:0 , P 0:0 ) β€²β€² ) β€²β€² ) β€²β€² ) ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ’ : 𝟏 ) ( 𝑯 πŸ‘ : 𝟏 , 𝑸 πŸ‘ : 𝟏 ) ( 𝑯 𝟐 : 𝟏 , 𝑸 𝟐 : 𝟏 ) ( 𝑯 𝟏 : 𝟏 , 𝑸 𝟏 : 𝟏 ) ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ“ : 𝟏 ( 𝑯 πŸ” : 𝟏 , 𝑸 πŸ• : 𝟏 ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ” : 𝟏 h 6 h 5 c 1 c 7 c 2 c 3 c 7 c 6 c 5 c 4 c 6 c 5 c 4 c 3 c 2 c 1 s 0 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 7 s 6 s 5 s 4 s 3 s 2 s 1 s 0 Problem : for 𝒓 > 𝒐/πŸ‘ the critical delay path is one βˆ†π‘― more than other case 14 ARITH 22

  72. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue 15 ARITH 22 15

  73. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue π‘œ β€’ How to solve extra delay critical problem for π‘Ÿ > 2 problem ? 15 ARITH 22 15

  74. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue π‘œ β€’ How to solve extra delay critical problem for π‘Ÿ > 2 problem ? οƒ˜ Devise a mixed KS/Lander-Fischer PPN architecture ((n-1) levels use KS architecture and the bottom level use LF ) y 6 y 5 x 5 y 4 x 4 y 3 y 2 y 1 x 1 y 0 y 7 x 7 x 6 x 3 x 2 x 0 x ο€­ y ο€­ x y i i i 1 i 1 y 6 x 6 y 5 x 5 p g h p’ h β€² pghp hβ€² pghhβ€² pgh pgh pgh pgh pgh pgh β€² β€² β„Ž 0 β„Ž 2 β„Ž 1 β„Ž 6 β„Ž 3 β„Ž 7 β„Ž 5 β„Ž 4 οƒš   ( g 6 , p 6 ) β€² ( g 5 , p 5 ) ( g 5 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) οƒ… οƒ… οƒš οƒ… οƒ… ( g 7 , p 7 ) x y x y x y x y x y π‘ž 6 x y x y ο€­ ο€­ ο€­ ο€­ 𝒒 𝟏 i i i i i i i i i 1 i 1 i i i 1 i 1 x x ο€­ y x y y ο€­ i i i i i 1 i 1 𝑯 𝟐 : 𝟏 ∨ 𝑸 𝟐 : 𝟏 𝑯 𝟐 : 𝟏 ∨ 𝑸 𝟐 : 𝟏 p g h h β€² p g h β€² β„Ž 5 π‘ž 6 g 4 𝐻 3:0 ⋁𝑄 3:0 οƒš οƒ… οƒš x y οƒ… οƒ… οƒ… p 4 x y x y x y x y x y x y x y 𝑯 πŸ’ : 𝟏 ∨ 𝑸 πŸ’ : 𝟏 i i i i i i i i ο€­ ο€­ i i i i i i i 1 i 1 Eqn.9  G P     G P        G P , G P , , , G P , G P , r r r r r r β€²β€² 𝑸 πŸ” : 𝟏 β€²β€² 𝑸 πŸ• : 𝟏 h i G 7:0 β€²β€² ) β€²β€² ) ( 𝑯 πŸ” : 𝟏 , 𝑸 πŸ• : 𝟏 ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ” : 𝟏 ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ’ : 𝟏 ) ( 𝑯 πŸ‘ : 𝟏 , 𝑸 πŸ‘ : 𝟏 ) ( 𝑯 𝟐 : 𝟏 , 𝑸 𝟐 : 𝟏 ) ( 𝑯 𝟏 : 𝟏 , 𝑸 𝟏 : 𝟏 ) ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ“ : 𝟏 )     οƒš οƒš οƒš h G P G , G P G G P G P P h 6 i r r r r c 1 G P   c 2     c 7 c 3 c 6 c 5 c 4 G P , ο‚’ G P , , οƒš r r p g G P h 6 r r 4 5 οƒš P G P 4 3:0 3:0 Eqn.9 ο‚’ο‚’ ο‚’ο‚’ οƒš P   οƒš οƒš P G P G G P G ( P ) 5:0 6:0 s 7 s 4 s 3 s 2 s 1 s 0 G P , s 6 s 5 r r r 15 ARITH 22 15

  75. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue π‘œ β€’ How to solve extra delay critical problem for π‘Ÿ > 2 problem ? οƒ˜ Devise a mixed KS/Lander-Fischer PPN architecture ((n-1) levels use KS architecture and the bottom level use LF ) y 6 y 5 x 5 y 4 x 4 y 3 y 2 y 1 x 1 y 0 y 7 x 7 x 6 x 3 x 2 x 0 x ο€­ y ο€­ x y i i i 1 i 1 y 6 x 6 y 5 x 5 p g h p’ h β€² pghp hβ€² pghhβ€² pgh pgh pgh pgh pgh pgh β€² β€² β„Ž 0 β„Ž 2 β„Ž 1 β„Ž 6 β„Ž 3 β„Ž 7 β„Ž 5 β„Ž 4 οƒš   ( g 6 , p 6 ) β€² ( g 5 , p 5 ) ( g 5 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) οƒ… οƒ… οƒš οƒ… οƒ… ( g 7 , p 7 ) x y x y x y x y x y π‘ž 6 x y x y ο€­ ο€­ ο€­ ο€­ 𝒒 𝟏 i i i i i i i i i 1 i 1 i i i 1 i 1 x x ο€­ y x y y ο€­ i i i i i 1 i 1 𝑯 𝟐 : 𝟏 ∨ 𝑸 𝟐 : 𝟏 KS 𝑯 𝟐 : 𝟏 ∨ 𝑸 𝟐 : 𝟏 p g h h β€² p g h β€² β„Ž 5 π‘ž 6 g 4 𝐻 3:0 ⋁𝑄 3:0 οƒš οƒ… οƒš x y οƒ… οƒ… οƒ… p 4 x y x y x y x y x y x y x y 𝑯 πŸ’ : 𝟏 ∨ 𝑸 πŸ’ : 𝟏 i i i i i i i i ο€­ ο€­ i i i i i i i 1 i 1 Eqn.9  G P     G P        G P , G P , , , G P , G P , LF r r r r r r β€²β€² 𝑸 πŸ” : 𝟏 β€²β€² 𝑸 πŸ• : 𝟏 h i G 7:0 β€²β€² ) β€²β€² ) ( 𝑯 πŸ” : 𝟏 , 𝑸 πŸ• : 𝟏 ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ” : 𝟏 ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ’ : 𝟏 ) ( 𝑯 πŸ‘ : 𝟏 , 𝑸 πŸ‘ : 𝟏 ) ( 𝑯 𝟐 : 𝟏 , 𝑸 𝟐 : 𝟏 ) ( 𝑯 𝟏 : 𝟏 , 𝑸 𝟏 : 𝟏 ) ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ“ : 𝟏 )     οƒš οƒš οƒš h G P G , G P G G P G P P h 6 i r r r r c 1 G P   c 2     c 7 c 3 c 6 c 5 c 4 G P , ο‚’ G P , , οƒš r r p g G P h 6 r r 4 5 οƒš P G P 4 3:0 3:0 Eqn.9 ο‚’ο‚’ ο‚’ο‚’ οƒš P   οƒš οƒš P G P G G P G ( P ) 5:0 6:0 s 7 s 4 s 3 s 2 s 1 s 0 G P , s 6 s 5 r r r 15 ARITH 22 15

  76. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue π‘œ β€’ How to solve extra delay critical problem for π‘Ÿ > 2 problem ? οƒ˜ Devise a mixed KS/Lander-Fischer PPN architecture ((n-1) levels use KS architecture and the bottom level use LF ) οƒ˜ Using twin nodes (Computing 𝐻 𝑗:0 and 𝐻 𝑗:0 ∨ 𝑄 𝑗:0 as a same time) y 6 y 5 x 5 y 4 x 4 y 3 y 2 y 1 x 1 y 0 y 7 x 7 x 6 x 3 x 2 x 0 x ο€­ y ο€­ x y i i i 1 i 1 y 6 x 6 y 5 x 5 p g h p’ h β€² pghp hβ€² pghhβ€² pgh pgh pgh pgh pgh pgh β€² β€² β„Ž 0 β„Ž 2 β„Ž 1 β„Ž 6 β„Ž 3 β„Ž 7 β„Ž 5 β„Ž 4 οƒš   ( g 6 , p 6 ) β€² ( g 5 , p 5 ) ( g 5 , p 4 ) ( g 3 , p 3 ) ( g 2 , p 2 ) ( g 1 , p 1 ) ( g 0 , p 0 ) οƒ… οƒ… οƒš οƒ… οƒ… ( g 7 , p 7 ) x y x y x y x y x y π‘ž 6 x y x y ο€­ ο€­ ο€­ ο€­ 𝒒 𝟏 i i i i i i i i i 1 i 1 i i i 1 i 1 x x ο€­ y x y y ο€­ i i i i i 1 i 1 𝑯 𝟐 : 𝟏 ∨ 𝑸 𝟐 : 𝟏 𝑯 𝟐 : 𝟏 ∨ 𝑸 𝟐 : 𝟏 p g h h β€² p g h β€² β„Ž 5 π‘ž 6 g 4 𝐻 3:0 ⋁𝑄 3:0 οƒš οƒ… οƒš x y οƒ… οƒ… οƒ… p 4 x y x y x y x y x y x y x y 𝑯 πŸ’ : 𝟏 ∨ 𝑸 πŸ’ : 𝟏 i i i i i i i i ο€­ ο€­ i i i i i i i 1 i 1 Eqn.9  G P     G P        G P , G P , , , G P , G P , r r r r r r β€²β€² 𝑸 πŸ” : 𝟏 β€²β€² 𝑸 πŸ• : 𝟏 h i G 7:0 β€²β€² ) β€²β€² ) ( 𝑯 πŸ” : 𝟏 , 𝑸 πŸ• : 𝟏 ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ” : 𝟏 ( 𝑯 πŸ’ : 𝟏 , 𝑸 πŸ’ : 𝟏 ) ( 𝑯 πŸ‘ : 𝟏 , 𝑸 πŸ‘ : 𝟏 ) ( 𝑯 𝟐 : 𝟏 , 𝑸 𝟐 : 𝟏 ) ( 𝑯 𝟏 : 𝟏 , 𝑸 𝟏 : 𝟏 ) ( 𝑯 πŸ“ : 𝟏 , 𝑸 πŸ“ : 𝟏 )     οƒš οƒš οƒš h G P G , G P G G P G P P h 6 i r r r r c 1 G P   c 2     c 7 c 3 c 6 c 5 c 4 G P , ο‚’ G P , , οƒš r r p g G P h 6 r r 4 5 οƒš P G P 4 3:0 3:0 Eqn.9 ο‚’ο‚’ ο‚’ο‚’ οƒš P   οƒš οƒš P G P G G P G ( P ) 5:0 6:0 s 7 s 4 s 3 s 2 s 1 s 0 G P , s 6 s 5 r r r 15 ARITH 22 15

  77. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue 16 ARITH 22

  78. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Design Delay ( βˆ†π‘― ) Area (𝓑 𝑯 ) Analytical gate Level Evaluation [4] 4 log π‘œ + 8 6π‘œ log π‘œ + 5π‘œ + 1 βˆ†π‘― : Delay of Simple Gate 4 log π‘œ + 12 3π‘œ log π‘œ + 10π‘œ + 1 [5] 3 π‘œ βˆ’ 1 log π‘œ + 𝓑 𝑯 : Area of Simple Gate 2 log (π‘œ βˆ’ 1) + 7 [6] 3 π‘œ βˆ’ 1 log π‘œ βˆ’ 1 + 5π‘œ + 1 2 log π‘œ βˆ’ 1 + 3 π‘œ βˆ’ 2 log π‘œ βˆ’ 2 βˆ’ [7] 2 log (π‘œ βˆ’ 2) + 8 log (π‘œ βˆ’ 1) + 7π‘œ + 27 2 log (π‘œ βˆ’ 1) + 7 3 π‘œ log (π‘œ βˆ’ 1) + 13π‘œ βˆ’ 5 [8] [9] 2 log π‘œ + 7 3π‘œ βˆ’ 1 log π‘œ + 11.5π‘œ + 1 2 log π‘œ + 7 3π‘œ log π‘œ + 6π‘œ βˆ’ 3π‘Ÿ + 2 + 𝒝 𝑑 [10] 3π‘œ log π‘œ + 1.5π‘œ log π‘œ βˆ’ 1 [11] ( 𝒓 = 𝒐 βˆ’ πŸ‘ ) 2 log π‘œ + 5 + 7π‘œ + 2 log π‘œβˆ’1 βˆ’1 [13]-RPP ( 𝒓 = 𝟐 ) 2 log (π‘œ βˆ’ 1) + 6 3 π‘œ βˆ’ 1 log(π‘œ βˆ’ 1) + 8π‘œ βˆ’ 1 3 π‘œ βˆ’ 1 log π‘œ + New ( 𝒓 ≀ 𝒐/πŸ‘) 2 log π‘œ + 5 7π‘œ βˆ’ 3π‘Ÿ βˆ’ 1 + 𝒝 𝑄 β€²β€² 3(π‘œ βˆ’ 1) log π‘œ + 5.5π‘œ βˆ’ New ( 𝒓 > 𝒐/πŸ‘) 2 log π‘œ + 5 3π‘Ÿ + 2 log π‘œ + 𝒝 𝑄 β€²β€² [3]-RPP 2 log π‘œ + 5 3π‘œ log π‘œ + 4π‘œ 16 ARITH 22

  79. Modulo- πŸ‘ 𝒐 βˆ’ πŸ‘ 𝒓 βˆ’ 𝟐 Parallel Prefix Addition via Excess-Modulo Encoding of Residue Design Delay ( βˆ†π‘― ) Area (𝓑 𝑯 ) Analytical gate Level Evaluation [4] 4 log π‘œ + 8 6π‘œ log π‘œ + 5π‘œ + 1 βˆ†π‘― : Delay of Simple Gate 4 log π‘œ + 12 3π‘œ log π‘œ + 10π‘œ + 1 [5] 3 π‘œ βˆ’ 1 log π‘œ + 𝓑 𝑯 : Area of Simple Gate 2 log (π‘œ βˆ’ 1) + 7 [6] 3 π‘œ βˆ’ 1 log π‘œ βˆ’ 1 + 5π‘œ + 1 2 log π‘œ βˆ’ 1 + 3 π‘œ βˆ’ 2 log π‘œ βˆ’ 2 βˆ’ [7] 2 log (π‘œ βˆ’ 2) + 8 log (π‘œ βˆ’ 1) + 7π‘œ + 27 2 log (π‘œ βˆ’ 1) + 7 3 π‘œ log (π‘œ βˆ’ 1) + 13π‘œ βˆ’ 5 [8] [9] 2 log π‘œ + 7 3π‘œ βˆ’ 1 log π‘œ + 11.5π‘œ + 1 2 log π‘œ + 7 3π‘œ log π‘œ + 6π‘œ βˆ’ 3π‘Ÿ + 2 + 𝒝 𝑑 [10] 3π‘œ log π‘œ + 1.5π‘œ log π‘œ βˆ’ 1 [11] ( 𝒓 = 𝒐 βˆ’ πŸ‘ ) 2 log π‘œ + 5 + 7π‘œ + 2 log π‘œβˆ’1 βˆ’1 [13]-RPP ( 𝒓 = 𝟐 ) 2 log (π‘œ βˆ’ 1) + 6 3 π‘œ βˆ’ 1 log(π‘œ βˆ’ 1) + 8π‘œ βˆ’ 1 3 π‘œ βˆ’ 1 log π‘œ + New ( 𝒓 ≀ 𝒐/πŸ‘) 2 log π‘œ + 5 7π‘œ βˆ’ 3π‘Ÿ βˆ’ 1 + 𝒝 𝑄 β€²β€² 3(π‘œ βˆ’ 1) log π‘œ + 5.5π‘œ βˆ’ New ( 𝒓 > 𝒐/πŸ‘) 2 log π‘œ + 5 3π‘Ÿ + 2 log π‘œ + 𝒝 𝑄 β€²β€² [3]-RPP 2 log π‘œ + 5 3π‘œ log π‘œ + 4π‘œ 16 ARITH 22

Recommend


More recommend