127
δεύτερο
µισό,
που
καλύπτει
τα
βήµατα
π έως ι, επιϕέρει την πιο εκτεταµένη
καθυστέρηση δύο λειτουργιών XOR, µίας λειτουργίας AND και µίας πρόσθετης
λειτουργίας
XOR.
Εϕαρµόζοντας
αυτήν
την
προσέγγιση
υποδιασωλήνωσης
και
βελτιστοποιώντας την κρίσιµη διαδροµή,
µπορούµε να µειώσουµε σηµαντικά τη
συνολική καθυστέρηση και να βελτιώσουµε τη συχνότητα ρολογιού στην ο ποία
µπορεί να λειτουργήσει η συνάρτηση κατακερµατισµού. Αυτή η βελτίωση οδηγεί
σε
µια
πιο
αποτελεσµατική
και
υψηλής
απόδοσης
υλοποίηση
της
συνάρτησης
κατακερµατισµού Keccak στην προτεινόµενη αρχιτεκτονική µας.
Η
υλοποίηση
της
διασωλήνωσης
και
του
ξετυλίγµατος
της
διαδικασίας
κατακερµατισµού
αυξάνει
την
παραλληλία
στην
επεξεργασία,
επιτρέποντας
την ταυτόχρονη εκτέλεση πολλαπλών βηµάτων. Αυτό µειώνει τον συνολικό χρόνο
απαιτούµενο για την ολοκλήρωση ενός κύκλου κατακερµατισµού, προσϕέροντας
σηµαντικά
οϕέλη
σε
εϕαρµογές
που
απαιτούν
υψηλής
ταχύτητας
επεξεργασία
δεδοµένων.
Μέσω
αυτής
της
µεθόδου,
δίνεται
έµϕαση
στην
εξοικονόµηση
πόρων
µέσω
της
αποϕυγής
της
υπερβολικής
χρήσης
λογικών
πυλών
για
την
υλοποίηση
των
συναρτήσεων XOR και AND, αξιοποιώντας έτσι µε τον καλύτερο δυνατό τρόπο
τη διαθέσιµη χωρητικότητα των FPGA συσκευών.
Η αποδοτικότητα αυτής της
προσέγγισης καθίσταται εξαιρετικά σηµαντική σε περιβάλλοντα όπου οι χρονικοί
και
υλικοτεχνικοί
πόροι
είναι
περιορισµένοι,
επιτρέποντας
την
ανάπτυξη
πιο
σύνθετων και απαιτητικών εϕαρµογών χωρίς συµβιβασµούς στην απόδοση.
Πίνακας
6.3:
Τα
αποτελέσµατα
της
βελτιστοποίησης
διοχετεύσεων
και
ξετυλίγµατος υλικού στις συσκευές FPGA (Virtex-5, Virtex-6, και Virtex-7).
Μετρικές
Μέγεθος
µπλοκ r
Virtex-5
Virtex-6
Virtex-7
Συχνότητα (MHz)
272,41
344,62
396,28
Επιϕάνεια (slices)
1186
1348
1452
Ρυθµαπόδοση
(Gbps)
r=1152
26,151
33,084
38,043
r=1088
24,699
31,246
35,929
r=832
18,887
23,894
27,475
r=576
13,076
16,542
19,021
Αποδοτικότητα
(Gbps/slices)
r=1152
22,05
24,54
26,20
r=1088
20,83
23,18
24,74
r=832
15,93
17,73
18,92
r=576
11,03
12,27
13,10
Συµπερασµατα απο την τεχνική διοχετεύσεων και ξετυλίγµατος υλικού: