ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ...

30
ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ ΠΟΛΛΑΠΛΑΣΙΑΣΤΗΣ: Αποτελεί το 10% κατά μέγιστο του συνολικού ημιαγωγικού υλικού σε ένα ψηφιακό επεξεργαστή. Συνήθως μοιράζεται το hardware και με άλλες πράξεις όπως αυτές της διαίρεσης και της στρογγυλοποίησης προκειμένου να επιτευχθεί μεγαλύτερη ταχύτητα. Το μέσο κόστος του αυξάνεται ανά τετραγωνική ρίζα μήκους ψηφιολέξης, ενώ ο χρόνος εκτέλεσης αυξάνεται ανά δυαδικό λογάριθμο μήκους ψηφιολέξης. Κατά μέσο όρο η πράξη του πολλαπλασιασμού διαρκεί περίπου τέσσερις φορές από ότι η πρόσθεση. Το 1/3 των αριθμητικών πράξεων είναι πολλαπλασιασμοί. Αύξηση κατά πολύ της ταχύτητας του πολλαπλασιασμού εκτιμάται σε διπλασιασμό της ταχύτητας της cpu

Transcript of ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ...

Page 1: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ

ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537

ΕΙΣΑΓΩΓΗ

ΠΟΛΛΑΠΛΑΣΙΑΣΤΗΣ:Αποτελεί το 10% κατά µέγιστο του συνολικού ηµιαγωγικού υλικού σε ένα ψηφιακό επεξεργαστή.Συνήθως µοιράζεται το hardware και µε άλλες πράξεις όπως αυτές της διαίρεσης και της στρογγυλοποίησης προκειµένου να επιτευχθεί µεγαλύτερη ταχύτητα.Το µέσο κόστος του αυξάνεται ανά τετραγωνική ρίζα µήκους ψηφιολέξης, ενώ ο χρόνος εκτέλεσης αυξάνεται ανά δυαδικό λογάριθµο µήκους ψηφιολέξης.Κατά µέσο όρο η πράξη του πολλαπλασιασµού διαρκεί περίπου τέσσερις φορές από ότι η πρόσθεση.Το 1/3 των αριθµητικών πράξεων είναι πολλαπλασιασµοί.Αύξηση κατά πολύ της ταχύτητας του πολλαπλασιασµού εκτιµάται σε διπλασιασµό της ταχύτητας της cpu

Page 2: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

ΚΑΤΗΓΟΡΙΕΣ

Adder bypassing

Reducing addition time

Multiple shifts

Multiplier Recoding

High Radix Multiplication

ΕΜΕΣΟΙΠΟΛΛΑΠΛΑΣΙΑΣΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΥΛΙΚΟ

Page 3: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Τυπική έµµεση µονάδα πολλαπλασιασµού

Αποτελείται από:

3 καταχωρητές(AC,MR,AX)

n-bit Parallel Adder

2 ξεχωριστά flip-flops

Μετρητής ελέγχου (Control Counter –CTR)

Εξισώσεις Πολλαπλασιασµού

S=Sn-1…S1S0 αποτέλεσµα αθροιστή

AX^MR0=

Cout.S←(AC)+(AX^MR0)

AC.MR←Cout.Sn-1…S1S0MRn-1…MR1

⎭⎬⎫

⎩⎨⎧

==0MR αν 0,

1MR αν AX,

0

0

Page 4: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

UNSIGNED AND SIGN-MAGNITUDE MULTIPLICATION

Page 5: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Πολλαπλασιασµός 2 n-bit απρόσηµων αριθµώνΧρειάζονται n+1 κύκλοιΤο φόρτωµα των δεδοµένων στους καταχωρητέςκαι τα flip-flop γίνεται στον κύκλο C0

To loop του πολλαπλασιασµού αποτελείται από n κύκλουςΑν έχουµε απρόσηµους αριθµούς τότε τα As και Bs flip-flop γεµίζουν µε µηδενικά, αλλιώς µε τα πρόσηµα.Στο τέλος του πολλαπλασιασµού το πρόσηµο εξάγεται µε πράξη XOR µεταξύ των As και Bsflip-flop Χρόνος εκτέλεσης πολλαπλασιασµού n+1 κύκλοι

Indirect Sign-Complement Multiplications

Page 6: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Απαιτούνται 2 complemented stages: precomplemented/postcompemented

Χρόνοι:

OC (1’s complement) απαιτεί n+3 κύκλους

TC (2’s complement) απαιτεί n+5 κύκλους

Το κύριο loop πολλαπλασιασµού είναι ίδιο µε εκείνο του unsigned and sing-magnitude πολλαπλασιασµού.

Page 7: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Indirect Universal Multiplier Design

Page 8: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Περιέχει όλες τις προηγούµενες τεχνικές πολλαπλασιασµού

Απαιτούνται µόνο 2 γραµµές ελέγχου για να καθορίσουµε πια πράξη εκτελούµε

Ο χρονισµός του κυκλώµατος είναι ίδιος µε αυτόν του επεξεργαστή

Υπάρχουν περιπτώσεις όπου ο επεξεργαστής µένει ανενεργός

Multiple Shifts in Multiplication

Page 9: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Βασίζεται στην ιδιότητα ότι παράγουµε συγκεκριµένα γινόµενα τα οποία προσθέτουµε συνέχειαΧρησιµοποιείται για να επιταχύνουµε την πράξη του πολλαπλασιασµούΜπορεί να είναι επικαλυπτόµενη ή µηΓίνεται χρήση Carry Save Adder και Carry propagate Adder δέντρων, και loop αυτώνΜεγαλύτερο κόστος στο υλικόΕπιτυγχάνεται µε τον έλεγχο πολλαπλών bit τη φορά ανά οµάδεςΧρησιµοποιούµε ζυγό αριθµό µήκος λέξης. Αν δεν είναι συµπληρώνουµε µε µηδενικά

Γενικά

Non Overllapped Multiple-Bit Scanning ShiftsΌσο πιο µεγάλο είναι το µπλοκ των bits που σαρώνεταιτόσο πιο πολλά είναι τα γινόµενα που θα προστεθούν, εποµένως χρειαζόµαστε περισσότερες προσθέσειςΧρειαζόµαστε γενικά t= + 1 κύκλους, για m ίσο µε τον αριθµό των bit που ελέγχουµε κάθε φοράΠροκειµένου να αυξήσουµε τον αριθµό των bit που θα σαρώνουµε κάθε φορά χρειαζόµαστε περισσότερων επιπέδων CSA δέντραΗ πρόσθεση κάθε επιπέδου CSA προσθέτει 2∆ καθυστέρησηΗ καθυστέρηση των καταχωρητών των πολυπλεκτών και της επιλογής γινοµένου υπολογίζεται µαζί σε 8∆Εποµένως για m bit σάρωση, έχοντας ένα u-level CSAδέντρο, έχουµε συνολικό χρόνο πολλαπλασιασµού: (20+2u)( +1)∆, και χρειαζόµαστε m-1 CSA’s

⎥⎥⎤

⎢⎢⎡

m

n

⎥⎥⎤

⎢⎢⎡m

n

Page 10: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Overlapped Multiple-Bit Shifts

H βασική ιδέα στηρίζεται στο shift-άρισµα από την εύρεση µηδενικών στον τελεστή –πολλαπλασιαστή προκειµένου να γλιτώσουµε προσθέσειςΓια µεγάλο αριθµό µηδενικών γλιτώνουµε παρά πολύ χρόνοΜειώνει στο µισό τον αριθµό των γινοµένων που θα προστεθούνΧρειάζονται µόνο οι µισοί CSA’s για την πράξη του πολλαπλασιασµού

Page 11: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Βασίζεται στους τύπους:Εάν έχουµε ένα string:∆ιάταξη: …,i+k,i+k-1,i+k-2,…,i,i-1,…Περιεχόµενο: …, 0 , 1, 1,…,1,0,…

↑ k συνεχόµενα 1↑Από την ιδιότητα:2i+k-2i=2i+k-1+2i+k-2+…+2i+1+2i

Μπορούµε να αντικαταστήσουµε τα k συνεχή 1 µε το ακόλουθο string:

∆ιάταξη: …,i+k+1,i+k,i+k-1,…,i+1,i,i-1,…Περιεχόµενο: …, 0 , 1, 0,…,0, ,…

1 πρόσθεση↑ k συνεχόµενα0’s ↑ 1 αφαίρεση

1

Βασίζεται στη ιδέα µετατροπής ενός δυαδικού αριθµού στην αντίστοιχη SDµορφή του έτσι ώστε να µην περιέχει συνεχόµενους άσους και αυτοί να χωρίζονται από µηδενικά∆ηλαδή Dn-1xDn-2≠1 για D=Dn-1Dn-2…D0

Η ιδιότητα αυτή πάντα πληρείται εάν στηναριστερή πλευρά του προσθέσουµε ένα 0 Dn=0

Canonical Multiplier Recoding

Page 12: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Χρειαζόµαστε µόνο τους τελεστές Α ,-Α

Τα µηδενικά shift-αρονται γλιτώνοντας χρόνο

Αν παίρνουµε τα bit ανά δυάδες τότε έχουµε 4 δυνατές καταστάσεις ( 0,0 ,01,10) που µπορεί να προσοµοιωθεί σαν 4SD διάνυσµα.

Έτσι χρειαζόµαστε τους τελεστές 0,Α,-Α,2Α,-2Α

Αυτή η τεχνική εφαρµόστηκε στους ILLIAC

11

String Recoding & Booth Multiplier

Βασίζεται στην ιδιότητα που έχει το δυαδικό string στην µέθοδο Overlapped Multiple-Bit Shifts

Το τροποποιηµένο string το ξανακωδικοποιούµε σύµφωνα µε τον αλγόριθµο

Di= ⎪⎭

⎪⎬

⎪⎩

⎪⎨

⟨=

1-ii

1-ii

1-ii

BΒ αν ,1

BΒ αν 1,

BB αν 0,

Page 13: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Η διαδικασία απαιτεί την εισαγωγή 2 µηδενικών bit δεξιά και αριστερά του string δηλαδή B-

1=Bn=0Παράδειγµα:

B=(0 0 1 0 1 0 1 0 1 0)2

D=(0 1 ΄1 1 ΄1 1 ΄1 1 ΄1 0)SD

Με τη µέθοδο αυτή αποφεύγουµε τα complemented stages: pre/postcompementedαφού δύο 2’s complement αριθµοί µπορούν να πολλαπλασιαστούν αµέσωςΈτσι αν στο D string βρούµε:

0 shift-αρουµε δεξιά1 προσθέτουµε A΄1 αφαιρούµε A

Υλοποιείται µε CSAδέντραΑπαιτεί κύκλους µηχανής όπου m ο αριθµός των ζευγαριών που ελέγχουµεΥπάρχει trade-off µεταξύ ταχύτητας και πολυπλοκότητας υλικούΤο απλούστερο σχέδιο είναι να σαρώνουµε ένα µόνο ζευγάρι από τα bitτου τελεστή-πολλαπλασιαστή αλλά αυτό απαιτεί n κύκλους

⎥⎥⎤

⎢⎢⎡ +

m

n 1

Page 14: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Iterative Cellular Array Multipliers

∆ηµιουργήθηκαν µε σκοπό την αποφυγή των πολλών add-shifts

Επιτυγχάνουν µεγάλη ταχύτητα υπολογισµού

Εκµεταλλεύονται τον παράλληλο πολλαπλασιασµό των µερικών όρων γινοµένου (summands: aibj)

Στοχεύουν στην µείωση των άσων σε κάθε τέτοιο όρο

Braun’s Array Multiplier

n(n-1) FA’s

n2 AND’s

∆US=(4n-2)∆ µε RCA

∆US=(2n-8)∆ µε CLA

Page 15: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Sign Complemented Array MultipliersΧρήση pre / postcomplementersστην 1’s και 2’s complementαναπαράσταση1’s: χρήση XOR2’s: χρήση n bits 2’s complementers µε καθυστέρηση (2n+3)∆Χρόνοι: ∆SM=(4n-2)∆ ∆OC=(4n+4)∆ ∆TC=(8n+4)∆

Page 16: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Nonadditive Multiply Modules with Wallace Trees

Wallace Tree k-εισόδων:bit-slice summing unit µε 3-προς-2 CSFA’s

Μέσος χρόνος:16bit χρόνος: 75nsec32bit χρόνος:115nsec

Page 17: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Additive Multiply ModulesΧρόνος καθυστέρησης για 4mx4m ΑΜΜ Networkµε 4-προς-2 AMM’s: ∆4mx4m=(30m-8)∆

#AMM’s=2m2

Page 18: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ
Page 19: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Direct 2’s Complement Multiplication

Γίνεται χρήση των Generalized Full Adders

Στηρίζεται σε µια ιδιόµορφη αναπαράσταση των αρνητικών αριθµών σε 2’s complement πχ.

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

=⎥⎦

⎤⎢⎣

⎡−+−

=+

=

=

=

1,2)1(1

0,2

1

2

0

1

2

0

n

n

i

ii

n

n

i

ii

u

aa

aa

N

01234210

01234210

2121202021)10011()13(

2120212120)01101()13(

⋅+⋅+⋅+⋅+⋅−==−=−

⋅+⋅+⋅+⋅+⋅−==+=

N

N

Generalized Full AddersΤύπος 0:C21+S20=X20+Y20+Z20

Τύπος 1: C21+(-S)20=X20+Y20+(-Z)20

Τύπος 2:(-C)21+S20=(-X)20+(-Y)20+Z20

Τύπος 3:(-C)21+(-S)20=(-X)20+(-Y)20+(-Z)20

Τύπος 0 ή Τύπος 3:S=X’Y’Z+X’YZ’+XY’Z’+XYZC=XY+YZ+ZX

Τύπος 1 ή Τύπος 2:S=X’Y’Z+X’YZ’+XY’Z’+XYZC=XY+XZ’+YZ’

Page 20: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Pezaris Array MultiplierΕίναι άµεσος πολλαπλασιαστής για 2’s complement εισόδους

Γίνεται χρήση ανάµεικτων Generalized FA’s

∆p=(4n-2)∆

∆p(CLA)=(2n+8)∆

Tri-section Array MultiplierΑλλαγή FA’s τύπου 2 µε FA’s τύπου 1

Page 21: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Bi-section Array Multiplier∆BS=4n∆∆BS(CLA)=(2n+10)∆

Baugh-Wooley 2’s Complement Multipliers

Page 22: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Baugh-Wooley Multipliers µε χρήση 2’s complement των αρνητικών summands

Page 23: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Συγκρίσεις

2(m+n)∆2(m+n)∆2(m+n)-2∆2(m+n)∆-2∆Multiply TIme

0001Τύπος 3

02(m-1)2(m-1)m+n-3Τύπος 2

002(m-1)(n-2)m-2Τύπος 1

m(n-1)+3(m-2)(n-1)2(m-1)(n-2)(m-2)(n-2)Τύπος 0

#FA’s

Baugh-Wooley

Bi-SectionTri-SectionPezaris

mxn 2’s Complement Array Multiplier

Universal Multiplication Arrays

2’s complement

11

1’s complement

10

Sign-magnitude

01

Unsigned00

Λειτουργίαπολλαπλασι

ασµού

Mode Control

XY

Page 24: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Αλγόριθµος για UMA’sPik=aibk για Pn-1,n-1=an-1bn-1

Ei=(XY ai)bn-1 γιαFk=an-1(XY bk) γιαQa=XYa’n-1; Qb=XYb’n-1

Za=XYan-1; Zb=XYbn-1

W=XYΧρειάζονται: n2-n+3 FA’s,6n-3 XOR’s,N2+11 AND’s,3 OR’s,1 dual 4-to-1 MUX

⎭⎬⎫

⎩⎨⎧

−≤≤−≤≤

20

20

nk

ni

⊕ 20 −≤≤ ni

20 −≤≤ nk

Page 25: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Programmable Additive Multiply Modules (PAM’s)

‘Εχουµε 4 διαφορετικές λειτουργίες κατ’ επιλογή

Χαρακτηριστικά

Mode 00:

Mode 01:

Mode 10:

Mode 11:

( ) ( )∑∑ ∑−

=

=

=

×++×=×1

0

1

0

1

000 22

k

i

k

j

k

r

rrr

iji dcbakkM

( ) ( )∑∑ ∑ ∑−

=

=

=

=

−+−

+ ++×+×=×1

0

2

0

1

0

1

0

1101 22

k

i

k

j

k

i

k

rrr

ikki

jiji dcbabakkM

( ) ( ) rk

i

k

j

k

j

k

rrr

jkjk

jiji dcbabakkM 222

2

0

1

0

1

0

1

0

1110 ×++×+×=× ∑∑ ∑ ∑

=

=

=

=

−+−

+

( )

( ) ( ) rk

rrr

kkk

k

j

k

i

kikki

jkjk

k

i

k

j

kkk

jiji

dcba

baba

babakkM

22

2122

22

1

0

111

1

0

1

0

1211

11

2

0

2

0

221111

×++×++

×+×+×+

×+×=×

∑ ∑

∑∑

=

−−−

=

=

−−+−

−+−

=

=

−−−

+

Page 26: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Universal Multiplication Networks

Page 27: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Χρονοκαθυστερήσεις

(7n-5)∆(4n+15)∆n2-n-3Nxn

219∆64143∆98932x32

107∆1679∆23716x16

51∆447∆538x8

Multiply Time

#PAM’sMultiply Time

#FA’sSize nxn

UMN(nxn)UMA(nxn)

2

4 ⎟⎠⎞⎜

⎝⎛ n

Recoded Array MultiplicationΓίνεται χρήση µιας ιδιαίτερης δοµής αναπαράστασης των 2’s complemented αριθµώνΧρησιµοποιούνται CASS’s (Controlled Add-Substract Shifters)Aκολουθείται Booth αλγόριθµοςΧρόνος: ∆=(16n-5)∆ µεταξύ array και serial-parallel πολλαπλασιαστών

Page 28: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

CSAA’s

S=A BP CPT=(A D)(B+C)+BCU=B;Q=P;R=DΑν P=0 τότε U=BAν P=1 και D=0 τότε το κελί λειτουργεί σαν AdderΑν P=1 και D=1 τότε το κελί ενεργεί σαν Substractor

⊕⊕⊕

ROM Adder Multiplication NetworksΧρησιµοποιούνται ROM’s µε περιεχόµενο ανάλογο µε το γινοµένου του αριθµού γραµµής επί του αριθµού στήληςΥπάρχουν 2m+n πιθανές λέξεις για ένα (m+n) γινόµενοΣυνολικός αποθηκευτικός χώρος: Ν=2m+nx(m+n)∆ηµιουργείται, όµως, λάθος στρογγυλοποίησης στο αποτέλεσµα emax=0.5/(2n-1)x100

Page 29: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Array Multiplier µε ROM’s

Page 30: ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ - ceid.upatras.gr · ΠΟΛΛΑΠΛΑΣΙΑΣΤΕΣ ΜΑΡΓΑΡΗΣ ΝΙΚΟΛΑΟΣ ΑΜ 2473 ΤΑΜΤΑΜΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΜ 2537 ΕΙΣΑΓΩΓΗ

Λογαριθµικοί Πολλαπλασιαστές

Γίνεται χρήση ROM’s οι οποίες, όµως, έχουν αποθηκευµένες τιµές ίσες µε τους λογαρίθµους (ή αντίστροφα αν πρόκειται για διαίρεση) των αναµενόµενων τιµών

Έτσι απαιτείται πολύ µικρός αποθηκευτικός χώρος

Σχέσεις: Α x B = antilog(logA + logB) A / B = antilog(logA – logB)