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

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