Οι επεξεργαστές Superscalar έχουν σχεδιαστεί για να εκτελούν πολλαπλές οδηγίες ανά κύκλο ⁇ ολογιού, αυξάνοντας την απόδοση. Ο υπολογισμός του χρόνου κύκλου ΚΜΕ περιλαμβάνει την ανάλυση διαφόρων παραγόντων όπως η λανθάνουσα λειτουργία οδηγιών, στάδια αγωγών και περιορισμοί υλικού. Αυτό το άρθρο παρέχει έναν οδηγό βήμα προς βήμα για τον καθορισμό του χρόνου κύκλου σε τέτοιους επεξεργαστές.

Κατανόηση των Συνιστωσών

Ο χρόνος κύκλου ενός υπερσκαλαρίου επεξεργαστή εξαρτάται από διάφορα βασικά συστατικά:

  • Κατευθυντήριο Latency: Ο αριθμός των κύκλων που απαιτούνται για την ολοκλήρωση μιας εντολής.
  • Βάθος πιπελίνης: Ο αριθμός των σταδίων στον αγωγό εντολών.
  • Χαρντγουάρ Περιορισμοί:[[LFT:1]] Παράγοντες όπως κίνδυνοι δεδομένων, συγκρούσεις πόρων και καθυστερήσεις πρόσβασης στη μνήμη.

Βήμα 1: Καθορίστε τη Μεγαλύτερη Λατίνα Οδηγιών

Αυτή η λανθάνουσα συχνότητα συχνά θέτει ένα χαμηλότερο όριο για το χρόνο κύκλου, επειδή οι επόμενες οδηγίες δεν μπορούν να ολοκληρώσουν γρηγορότερα από αυτό το όριο.

Βήμα 2: Ανάλυση σταδίων σωληνώσεων

Υπολογίστε το συνολικό αριθμό των σταδίων του αγωγού. Ο χρόνος του κύκλου πρέπει να είναι τουλάχιστον όσο το πιο αργό στάδιο για να εξασφαλιστεί ο σωστός συγχρονισμός σε όλο τον αγωγό.

Βήμα 3: Λογαριασμός για περιορισμούς υλικού

Αυτοί οι παράγοντες μπορούν να εισαγάγουν πάγκους ή καθυστερήσεις, επηρεάζοντας το βέλτιστο χρόνο κύκλου.

Τελικός υπολογισμός

Ο χρόνος κύκλου καθορίζεται λαμβάνοντας το μέγιστο μεταξύ:

  • Η μεγαλύτερη διάρκεια λανθάνουσας εκπαίδευσης διαιρείται με τον αριθμό των οδηγιών που μπορούν να εκτελεστούν παράλληλα.
  • Η διάρκεια του πιο αργού σταδίου του αγωγού.
  • Πρόσθετες καθυστερήσεις από περιορισμούς υλικού.

Μαθηματικά, μπορεί να εκφραστεί ως:

Κύκλος Χρόνος = max (Κατεύθυνση Λατανίας / Παραλληλισμού, Αργότερη Στάδιο Αγωγών, Καθυστέρηση υλικού)