EPIC
Le type d'architecture EPIC, tire son nom de l'abréviation de l'anglicisme «Explicitly Parallel Instruction Computing», lequel permet d'indiquer un microprocesseur utilisant un jeu d'instruction basé sur des instructions en parallèle (ILP). Le première idée sur l'EPIC sont sorties entre 1989 et 1999 suite à une alliance entre l'entreprise HP et Intel. Tandis que le premier rapport sur l'EPIC est publié par l'entreprise HP et s'appelle «EPIC: An Architecture for Instruction-Level Parallel Processors» et provient des auteurs Michael S. Schlansker et B. Ramakrishna Rau du HP Laboratories Palo Alto sous le numéro de publication HPL-1999-111.
Le parallélisme d'instruction (ILP) résulte d'un ensemble de techniques de conception de processeurs et de compilateurs accélérant l'exécution en exécutant en parallèle des opérations machine individuelles de type d'architecture RISC, telles que charges de mémoire et entreposage, ajouts de nombres entiers et multiplications en nombre réels (à virgule flottante). Les systèmes ILP reçoivent un programme de langage classique de haut niveau écrit pour les microprocesseurs séquentiels et utilisent la technologie et le matériel du compilateur pour exploiter automatiquement le parallélisme des programmes. Ainsi, une caractéristique importante de ces techniques est que, comme les améliorations de la vitesse des circuits, mais contrairement au parallélisme multiprocesseur traditionnel et au traitement massivement parallèle, elles sont largement transparent pour les programmeurs d'application.
Une architecture informatique est un contrat entre la classe de programmes écrite pour l'architecture et l'ensemble des intégration du processeur de cette architecture. Habituellement, ce contrat concerne le format d'instruction et l'interprétation des bits constituant une instruction, mais dans le cas des architectures ILP, il peut s'étendre aux informations incorporées dans le programme concernant le parallélisme disponible entre les instructions ou les opérations du programme. Les 2 principaux types de microprocesseurs ILP sont assez différents à se niveau :
- Les microprocesseurs superscalaires sont des intégration de microprocesseurs ILP pour des architectures séquentielles - des architectures pour lesquelles le programme n'est pas censé transmettre et, en fait, ne peuvent transmettre aucune information explicite concernant le parallélisme. Comme le programme ne contient aucune information explicite sur l'ILP disponible dans le programme, si ce programme ILP doit être utilisé, il doit être découvert par le matériel, qui doit ensuite construire un plan d'action pour exploiter le parallélisme.
- Les microprocesseurs VLIW (Very Long Instruction Word) sont des exemples d'architectures pour lesquelles le programme fournit des informations explicites sur le parallélisme. Le compilateur identifie le parallélisme dans le programme et le communique au matériel en spécifiant quelles opérations sont indépendantes les unes des autres. Ces informations ont une valeur directe pour le matériel, car il sait sans autre vérification quelles opérations il peut commencer à exécuter dans le même cycle.
Famille des microprocesseurs EPIC
Voici la liste des principales jeu d'instructions assembleur utilisant les principes de l'architecture EPIC :
Jeu d'instruction | Description |
---|---|
Itanium (IA-64) | Assembleur pour les microprocesseur Itanium de l'entreprise Intel. |