PARALLEL SLICE PROCESSOR WITH DYNAMIC INSTRUCTION STREAM MAPPING
A processor core having multiple parallel instruction execution slices and coupled to multiple dispatch queues by a dispatch routing network provides flexible and efficient use of internal resources. The dispatch routing network is controlled to dynamically vary the relationship between the slices a...
Gespeichert in:
Hauptverfasser: | , , , , , , |
---|---|
Format: | Patent |
Sprache: | eng ; fre |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | A processor core having multiple parallel instruction execution slices and coupled to multiple dispatch queues by a dispatch routing network provides flexible and efficient use of internal resources. The dispatch routing network is controlled to dynamically vary the relationship between the slices and instruction streams according to execution requirements for the instruction streams and the availability of resources in the instruction execution slices. The instruction execution slices may be dynamically reconfigured as between single- instruction-multiple-data (SIMD) instruction execution and ordinary instruction execution on a per-instruction basis, permitting the mixture of those instruction types. Instructions having an operand width greater than the width of a single instruction execution slice may be processed by multiple instruction execution slices configured to act in concert for the particular instructions. When an instruction execution slice is busy processing a current instruction for one of the streams, another slice can be selected to proceed with execution.
Un cœur de processeur comprenant plusieurs tranches d'exécution d'instructions parallèles et couplé à plusieurs files d'attente de distribution par un réseau de routage de distribution permet une utilisation flexible et efficace des ressources internes. Le réseau de routage de distribution est contrôlé afin de faire varier de manière dynamique la relation entre les tranches et les flux d'instructions en fonction des exigences d'exécution pour les flux d'instructions et de la disponibilité des ressources dans les tranches d'exécution d'instructions. Les tranches d'exécution d'instructions peuvent être reconfigurées de manière dynamique entre une exécution d'instruction à instruction unique et données multiples (SIMD) et une exécution d'instruction ordinaire pour chaque instruction, ce qui permet de combiner ces types d'instructions. Des instructions ayant une largeur d'opérande plus grande que la largeur d'une seule tranche d'exécution d'instructions peuvent être traitées par plusieurs tranches d'exécution d'instructions configurées pour agir conjointement pour les instructions particulières. Lorsqu'une tranche d'exécution d'instructions est en train de traiter une instruction actuelle pour l'un des flux, une autre tranche peut être sélectionnée pour poursuivre l'exécution. |
---|