A floating point unit capable of executing multiple instructions in a
single clock cycle using a central window and a register map is disclosed.
The floating point unit comprises: a plurality of translation units, a
future file, a central window, a plurality of functional units, a result
queue, and a plurality of physical registers. The floating point unit
receives speculative instructions, decodes them, and then stores them in
the central window. Speculative top of stack values are generated for each
instruction during decoding. Top of stack relative operands are computed
to physical registers using a register map. Register stack exchange
operations are performed during decoding. Instructions are then stored in
the central window, which selects the oldest stored instructions to be
issued to each functional pipeline and issues them. Conversion units
convert the instruction's operands to an internal format, and
normalization units detect and normalize any denormal operands. Finally,
the functional pipelines execute the instructions.
Μια μονάδα κινητής υποδιαστολής ικανή τις πολλαπλάσιες οδηγίες σε έναν ενιαίο κύκλο ρολογιών που χρησιμοποιεί ένα κεντρικό παράθυρο και έναν χάρτη καταλόγων αποκαλύπτεται. Η μονάδα κινητής υποδιαστολής περιλαμβάνει: μια πολλαπλότητα των μονάδων μεταφράσεων, ενός μελλοντικού αρχείου, ενός κεντρικού παραθύρου, μιας πολλαπλότητας των λειτουργικών μονάδων, μιας σειράς αναμονής αποτελέσματος, και μιας πολλαπλότητας των φυσικών καταλόγων. Η μονάδα κινητής υποδιαστολής λαμβάνει τις θεωρητικές οδηγίες, τις αποκωδικοποιεί, και τις αποθηκεύει έπειτα στο κεντρικό παράθυρο. Η θεωρητική κορυφή των τιμών σωρών παράγεται για κάθε οδηγία κατά τη διάρκεια της αποκωδικοποίησης. Η κορυφή των σχετικών τελεστέων σωρών υπολογίζεται στους φυσικούς καταλόγους χρησιμοποιώντας έναν χάρτη καταλόγων. Οι διαδικασίες ανταλλαγής σωρών καταλόγων εκτελούνται κατά τη διάρκεια της αποκωδικοποίησης. Οι οδηγίες αποθηκεύονται έπειτα στο κεντρικό παράθυρο, το οποίο επιλέγει τις παλαιότερες αποθηκευμένες οδηγίες που διανέμονται σε κάθε λειτουργική σωλήνωση και τις εκδίδει. Οι μονάδες μετατροπής μετατρέπουν τους τελεστέους της οδηγίας σε ένα εσωτερικό σχήμα, και οι μονάδες κανονικοποίησης ανιχνεύουν και ομαλοποιούν οποιουσδήποτε denormal τελεστέους. Τέλος, οι λειτουργικές σωληνώσεις εκτελούν τις οδηγίες.