Brevet FR2513410A1 — publié le 19830325

L'invention concerne les microprocesseurs, et plus particulièrement des microprocesseurs utilisant des instruc- tions qui ne nécessitent pas d'extraction en mémoire externe et des instructions qui nécessitent une extraction en mêmoi- re externe Les instructions ne nécessitant pas d'extraction en mémoire externe seront désignées ci-après instructions de type I tandis que celles nécessitant l'extraction de données dans une mémoire externe seront désignées ci-après instruc- tions du type II En général, les instructions du type Il sont constituées de deux parties: une partie étant la règle Opérande-extraction, l'autre étant la règle Opération. Exprimée par un verbe, une instruction de type I peut être considérée comme, par exemple, "prendre le complément de l'accumulateur", tandis qu'une instruction du type II peut être considérée, par exemple, comme " 3 extraire le contenu de la mémoire désignée par un registre d'index R 3 et ajou- ter ce nombre à l'accumulateur". Une mesure très importante de la performance d'un microprocesseur, en particulier dans le cas de processeurs de signaux, est le nombre d'opérations qu'il peut exécuter par seconde Il est donc souhaitable d'exploiter au maxi- mum chaque cycle d'horloge Une technique bien connue pour accomplir une telle exploitation est dite technique du "pipeline" dans laquelle une ou plusieurs instructions postérieures sont extraites avant l'achèvement de l'exécu- tion de la première instruction. Il est également souhaitable d'utiliser peu de bus dans l'architecture d'un microprocesseur afin de réduire le nombre de broches d'entrée/sortie, de simplifier la mémoire externe et de permettre une architecture "Von Neuman" dans laquelle les mémoires d'instruction et de données peuvent partager les mêmes dispositifs. L'invention s'applique particulièrement à un micro- processeur utilisant des instructions de type I et de type II, la technique du pipeline et deux bus, à savoir un bus d'adresse et un bus d'instructions/données Dans une telle machine, les différents types d'instructions et de retards présents soulèvent des difficultés pour l'organisation des opérations de traitement et, par conséquent, un gaspillage du temps précieux de calcul, limitant le nombre d'opéra- tions par seconde qui pourraient être autrement effectuées. L'invention a pour objet d'améliorer la puissance de calcul des microprocesseurs L'invention a également pour objet de synchroniser le déroulement des opérations dans une machine utilisant plusieurs types différents d'instructions afin de permettre une utilisation optimale des cycles du microprocesseur L'invention a plus parti- culièrement pour objet d'améliorer l'efficacité d'un micro- processeur utilisant une architecture à pipeline, deux bus et deux types d'instructions. Ces objectifs et avantages, ainsi que d'autres objectifset avantages, sont obtenus, conformément à l'in- vention, par la mise en oeuvre de moyens destinés à tam- ponner des adresses de données, des moyens de retard d'ins- tructions et un contrôleur destiné à commander ces éléments afin d'effectuer un traitement optimal. L'invention apporte plusieurs avantages Tout d'abord, des instructions et des données peuvent être imbriquées sur le même bus Au cours de chaque cycle, une extraction utile en mémoire est effectuée Une souplesse maximale est permise pour le codage des instructions Le rythme d'exécution des instructions est presque aussi uniforme que possible. L'invention sera décrite plus en détail en regard des dessins annexés à titre d'exemple nullement limitatif et sur lesquels: la figure l est un schéma simplifié d'une forme préférée de réalisation de l'invention; la figure 2 A montre l'imbrication des instructions et des données, de leurs adresses et de la synchronisation requise de leur apparition sur le bus d'adresses et les bus de données d'instructions de la forme préférée de réalisation; la figure 2 B montre l'action du signal IRS-1,5 qui sert d'arbitre de bus; la figure 2 C montre la position dans le temps des signaux d'entrée du décodeur par rapport à d'autres opéra- tions montrées sur les figures 2 A à 2 E; la figure 2 D montre la position dans le temps des signaux de sortie du décodeur et du chargement du tampon DAB de bus d'adresses de données par rapport aux autres opéra- tions illustrées sur les figures 2 A à 2 E; la figure 2 E montre la position dans le temps et le positionnement des contenus du registre d'instruction, du registre d'exécution et du registre X ainsi que le signal de commande IRSO; les figures 3 et 4 représentent un diagramme d'états et une table de vérité illustrant le fonctionnement de l'élément de mise en séquence d'états de la forme préférée de réali- sation de l'invention; et la figure 5 est un schéma du circuit logique de l'élément de mise en séquence d'états. La figure 1 représente la forme préférée de réali- sation de la structure du microprocesseur selon l'inven- tion Comme représenté, cemicroprocesseur utilise deux bus, à savoir un bus 11 d'adresse et un bus 13 d'instruc- tions/données Les délais associés en pratique au décodeur et à la logique combinatoire associée du microproces- seur imposent 1,5 cycle pour l'interprétation de la règle d'extraction d'opérande et la génération de l'adresse de l'opérande 1,5 cycle est également nécessaire à la mémoire pour renvoyer la donnée, l'adresse étant donnée Le temps total, égal à 3 cycles, correspond à la famille préférée des circuits logiques, à savoir les circuits intégrés à grande échelle du type NMOS c'est-à-dire MOS à canal N, et il constitue le "délai de pipeline' de la forme préférée de réalisation Ce type de logique impose également la fréquence maximale d'horloge à laquelle travaille le système. La figure 1 représente un ensemble 15 à empilage et compteur d'instruction qui produit des adresses de programme sur un bus d'adresses de programme (PAB) 12 transmises par l'intermédiaire d'un sélecteur 14 à un registre 17 d'adres- se, qui adresse des dispositifs de mémoire 19. En réponse à une adresse provenant du compteur 15 d'instruction, le dispositif de mémoire délivre une instruc- tion de type I ou de type IIà un registre 23 de sortie de 25134 1 O mémoire par l'intermédiaire du bus instructions/données 13, cette instruction étant transmise à un registre d'entrée Le registre d'adresse est l'un des cinq registres "d'encadrement'17, 23, 36, 39, 25 montrés sur la figure 1. Ces "registres" n'emmagasinent pas, mais établissent plu- tôt un retard ou délai approprié, et mettent en forme et effilent les signaux transférés à travers eux. L'instruction est appliquée à un décodeur 29 d'ins- truction d'adresse et elle est introduite dans un registre 27 d'instruction La ligne 30 de commande aboutissant au compteur d'instruction commande des sauts, des appels de sous-programoes et des retours. Le décodeur 24 d'instruction d'adresse décode la partie d'extraction d'opérande de l'instruction et applique la sortie décodée par la ligne 31 de commande d'adresse de données à un générateur 33 d'adresse dedonnées Le généra- teur 33 délivre une adresse de données au bus d'adresse de données (DAB) 10 quila transmet à un tampon élastique pouvant emmagasiner une adresse de données pour qu'elle soit ensuite appliquée au dispositif de mémoire 19 par l'intermédiaire du sélecteur 14 et du registre d'adresse 17 Le générateur d'adresse de donnée utilise de préférence la technique d'adressage indirect connue de l'homme de l'art. La forme de réalisation préférée utilise quatre registres d'index pouvant chacun générer une adresse Le décodeur 29 sélectionne le registre d'index approprié En cours de fonctionnement, l'instruction considérée peut contenir un ordre de lecture d'un registre d'index et d'une zone de déplacement L'adresse se trouvant dans le registre d'index indiqué est ensuite appliquée sur le bus d'adresse et son contenu est en même temps incrémenté ou décrémenté suivant le contenu de la zone de déplacement. Certaines règles d'extraction d'opérande peuvent nécessiter l'exécution d'une opération d'écriture en mémoire Dans ce cas, le signal 60 d'écriture, transmis par le registre d'adresse 17, conditionne la mémoire pour écrire la donnée présente dans un'registre de cumul 43, par l'intermédiaire d'un registre 62 Cette même donnée apparaîtra sur le bus d'instructions/données de la même manière que le résultat d'un cycle de lecture. D'autres techniques de génération d'adresses sont connues et utilisables et l'invention n'est pas limitée à une technique particulière. L'instruction est également placée dans un registre 27 d'instruction pour être finalement exécutée par le micro- processeur. L'exécution est réalisée par des circuits classiques, comprenant un registre d'exécution 36, un décodeur d'opé- ration 37, un registre 39, une unité logique arithmétique 41, un accumulateur 43 et un registre de données 45 Le déco- deur d'opérations décode l Jinstruction et transmet le si- gnal de sortie décodé au registre d'exécution Le registre 45 de données mémorise un mot de donnée demandé pour l'exé- cution de l'ordre contenu dans le registre d'exécution 36. Le chargement du registre de données 45 est commandé par un signal IRSO 53 Les autres données d'entrée de l'unité logique arithmétique 41, arrivant par la ligne 47, pro- viennent de la sortie de l'accumulateur 43. La section arithmétique peut utiliser plus d'un accumulateur, et de préférence elle en utilise deux Ainsi, l'entrée "A" de l'unité logique arithmétique 41 peut pro- venir du premier ou du second accumulateur Il est de préférence prévu une instruction permettant de renvoyer dans la mémoire 19 le signal de sortie de l'un ou l'autre des accumulateurs L'unité logique arithmétique 41 établit elle-même, de façon typique, plusieurs unités de retard du pipeline Comme indiqué ci-après, dans la forme préférée de réalisation, les données sont minutées pour arriver à l'entrée B de l'unité logique arithmétique 41 en même temps que l'arrivée de l'ordre approprié contenu dans le registre 39. Selon l'invention, une imbrication optimale des adresses d'instrtctions et des adresses de données sur le bus d'adresses il et des instructions et des données sur le bus instructions/données est réalisée au moyen d'un générateur DOB (dcnrées sur bus) 45 Comme représentée le générateur DOB 45 reçoit une entrée du décodeur 29 d'ins- truction d'adresse Cette entrée est constituée du signal DAR (demande d'adresse de donnée) qui apparaît en même temps que la production d'une adresse de données par le générateur d'adresses de données. Le signal DAR indique si l'instruction décodée en- traîne une extraction de donnée ou non. Le générateur DOB 45 produit des signaux de commande sur cinq lignes 49, 51, 52, 53 Lorsque le signal de com- mande IRSO présent sur la ligne 53 est vrai, le registre d'instruction est décalé Lorsque le signal de commande IRSO est faux, le registre X 45 est chargé Le signal de commande présent sur la ligne 49 détermine lorsque le tampon 38 du bus d'adresse de données (DAB) doit être chargé du signal DAB présent sur la ligne 10 Le signal de commande de sélection de bus d'adresse de programme, présent sur la ligne 52 détermine si l'adresse de programme provenant du bus d'adresse de programme (PAB) 15 est transmis au registre d'adresse Le signal de commande de sélection de bus d'adres- se de programme présent sur la ligne 50, détermine si le signal de sortie du générateur d'adresse de données est transmis au registre 17 d'adresse Le signal de commande de sélection de tampon du bus d'adresse de données, présent sur la ligne 51, détermine si le signal de sortie du tampon 38 du bus d'adresse de données est transmis directement au registre d'adresse 17 Ainsi, les signaux de commande 50 et 51 assurent 'l'élasticité" du tampon De plus, lorsque le générateur DOB émet une adresse de donnée, il inhibe le compteur d'instruction 15. Le générateur DOB a pour fonctions de générer les créneaux de microsynchronisation (signal IRS), de servir d'arbitre de bus pour les bus DAB, de tampon DAB et PAB et d'incrémenter le compteur d'instruction. La figure 3 représente une forme préférée de réali- sation du générateur DOB La figure 4 montre la table d'états pour tous les états possibles et les conditions demandées pour un mouvement d'un état à l'autre. Le générateur DOB génère les créneaux de synchroni- 13410 sation d'instruction et de données (microsynchronisation) pour le microprocesseur ainsi que pour les circuits de l'unité logique arithmétique La figure 4 montre la table d'états pour tous les états possibles et les conditions demandées pour passer d'un état à l'autre Comme mentionné -précédemment, les instructions peuvent être classées en deux types: A celles qui extraient un opérande; c'est à dire créent un créneau de données (type Il) B celles qui n'extraient pas un opérande; c'est- à-dire qui ne créent pas un créneau de dc Ménes (type I). Les règles pour imbriquer les créneaux de données et les extractions d'instructions sont: 1 le créneau de données pour une instruction N, si nécessaire, est créé immédiatement après l'extraction de l'instruction N + 2. 2 Une extraction d'instruction suit immédiatement chaque créneau de données. Le générateur DOB sélectionne soit une adresse de donnée, soit une adresse d'instruction -Le résultat de l'extraction peut être utilisable comme signal d'entrée pour le générateur DOB, en provenance du décodeur principal, trois cycles de bus plus tard Ceci est dû à la structure en pipeline (délais du matériel) du système. Le décodeur d'instruction d'adresse génére un signal appelé DAR (demande d'adresse de donnée) En réponse a une instruction du type II, ce signal est vrai, et en réponse à une instruction du type I, il est faux. Dans la forme préférée de réalisation, il existe un repositionnement à déclenchement extérieur (par exemple en réponse à la ligne sous tension). Le cycle de repositictmement laisse le générateur DOB dans l'état 14 Il reste dans cet état 14 tant qu'aucune instruction de type IXI nest décodée (D MR = 0). Pendant cet état, le compteur P C est incrémenté, son contenu est dirigé vers le bus d'adresse et le signal IRS-1,5 est vraî, indiquant une instruction sur le bus de donnée Le signal IPS est très importants car il établit les créneaux d'instruction et de donnée pour les autres cir- cuits du microprocesseur Si dans l'état 14, DAR = 1, le bus DAB est validé et son contenu est transféré direc- tement au bus d'adresse;:le compteur P C est inhibé de manière à ne pas effectuer d'incrémentation Ce signal IRS passe au niveau bas et le générateur passe à l'état 6. Dans l'état 6, le compteur P C est incrémenté. Si DAR = 0, le contenu du compteur P C est placé sur le bus d'adresse Le signal IRS est haut et le générateur passe à l'état 10 Si DAR = i le contenu du compteur P C. est placé sur le bus d'adresse, IRS est haut, le tampon DAB 38 est chargé du contenu du bus DAB et le générateur passe à l'état 11. Dans l'état 10, le compteur P C est incrémenté. Si D = O, le contenu du compteur P C est placé sur le bus d'adresse, IRS est haut et le générateur passe à l'état 12 Si DAR = 1, le contenu du compteur P C est placé sur le bus d'adresse, et IRS est haut, le tampon DAB 38 est chargé du contenu du bus DAB, et le générateur passe à l'état 13. Dans l'état 11, le compteur P C est inhibé de manière à ne pas pouvoir compter Si D = O, le contenu du tampon DAB 38 est placé sur le bus d'adresse, IRS reste haut et le générateur DOB passe à l'état 4 Si DAR = 1, le contenu du tampon DAB 38 est placé sur le bus d'adresse, cette opération étant suivie du chargement du registre par une nouvelle information présente sur le bus DAB Le signal IRS est haut et le générateur DOB passe à l'état 5. Pendant les états 4, 5, 12 et 13 le décodeur 29 est inactif, car les données sont sur le bus I/D 13, du fait que IRSO est bas. Dans l'état 4, le compteur P C est incrémenté et son contenu est placé sur le bus d'adresse IRS est bas, indiquant qu'une donnée est présente sur le bus de données. Le générateur DOB passe à l'état 10. Dans l'état 5, le compteur P C est incrémenté et 25134 1 O son contenu est placé sur le bus d'adresse Le tampon DAB 38 est chargé du contenu du bus DAB IRS est bas et le généra- teur DOB passe à l'état 11. Dans l'état 13, le compteur P C est inhibé de manière à ne pas pouvoir effectuer de comptage Le contenu du tampon DAB 38 est placé sur le bus d'adresse IRS est bas et le générateur DOB passe à l'état 6. A l'état 12, le compteur P C est incrémenté et son contenu est placé sur le bus d'adresse IRS est bas et le générateur DOB passe à l'état 14. Par conséquent, les fonctions du générateur DOB sont de générer des créneaux de micro-synchronisation (signal IRS), de servir d'arbitre de bus pour les bus DAB, de tampon DAB et PAB, et d'incrémenter le compteur d'instruction. La figure 5 représente le circuit logique du géné- rateur DOB Ce générateur comprend un certain nombre d'in- verseurs 55, 56, 57, 58; un certain nombre de portes ET , 61, 62, 63, 64; un certain nombre de portes NON-OU 67, 68, 69, 70; et quatre bascules 73, 74, 75, 76 de type D, interconnectés comme représenté L'entrée du généra- teur est le signal DAR et les signaux de sortie produits comprennent le signal IRS-1,5 et des signaux de commande CHARGE TAMPON DAB; SELECT TAMPON DAB; SELECT PAB/ INCREMENT PC; et SELECT DAB La fonction de ce circuit est illustré par la table de vérité du générateur-DOB, montrée sur la figure 4, et par le diagramme de la sé- quence d'états de la figure 3. Un exemple d'opération sera à présent décrit en regard des figures 2 A à 2 E et du tableau I annexé On suppose que l'historique de la machine est tel que trois instructions d'une rangée seront extraites de la mémoire, chacune demandant une extraction de donnée, Le tableau I ci-après montre un segment de programme qui exige une telle série d'instructions. TABLEAU I ADRESSE INSTRUCTION 1 ' O RRI + 1 MVP AD jl 1 RRI -1 ji 2 RR 3 O 3 SAUT 4 PCEQ 80 WRI O jl 6 N L 4 NOUVEAU ? 81 N 82 IMMATERIEL - 83 IMMATERIEL jl indique qu'un créneau de dconnée est associé à l'instructicn pr 6 cé- dente Il est ignoré par l'assembleur. Sur les figures 2 A à 2 E, I 1, Il, 12 exigent chacun un créneau de donnée 10 est décodé aussi rapidement que pos- sible et l'adresse AD O pour le créneau de donnée demandé par Io est placé sur DAB, puis sur le bus d'adresse 11 aussi rapidement que possible Il convient de noter que l'asso- ciation du retard de la mémoire et du retard minimal du décodeur exige trois cycles d'horloge entre l'instant zéro, auquel l'adresse de 10 est placée sur le bus d'adresse, et l'instant AD O placé sur le bus I 1 atteint le bus I/D à proximité de I O mais conformément à la règle opératoire DOB, l'adresse " 3 " pour 13 est placée sur le bus d'adresse avant la mise en place de ADI, à savoir l'adresse de la donnée pour I sur le bus d'adresse Ceci a pour résultat la présence de quatre unités de retard entre la mise en place de I 1 sur le bus I/D ll et la donnée Dl de Il sur le bus I/D De façon similaire, la donnée D 2 de 12 ne passe sur le bus I/D qu'après l'extraction de 14 et il en résulte cinq unités de retard entre le moment o 12 est placé sur le bus I/D et le mo- ment o D 2 est placé sur le même bus I/D. Entre-temps, les instructions I 0, Il, 12 pénètrent dans le registre d'instruction, sous la commande du signal IRSO (comme montré sur la figure 2 E) Lorsqu'un créneau de donnée est généré,IRSO passe au niveau bas, de sorte qu'il ne se produit aucun décalage lorsque le créneau de donnée apparatt sur le bus I/D Ainsi, 10 atteint 1 par l'intermédiaire du registre d'instruction, le registre d'exécution un demi cycle d'horloge avant l'introduction de la donnée DO O dans le registre X Ceci apparalt sur les lignes REG EXEC et REG X de la figure 2 E Ensuite, le signal de sortie du décodeur C(I 0) est appliqué à l'unité logique arithmétique en même temps que D O par l'inter- médiaire'du registre 39 d'encadrement. Les figures 2 D et 2 A montrent l'action du tampon élastique conjointement avec celle du générateur DOB Ceci apparaît notamment en comparant le signal de sortie du bus DAB et le bus I/D Ar O apparaît sur le bus DAB un cycle après l'apparition de I O sur le bus I/D AD 1 apparaît sur le bus DAB un cycle d'horloge après l'apparition de I 1 sur le bus I/D et est tatponné parle tampon élastique dans son tampon d'adresse de donnée 38 En même temps que ce tamponnement, l'adresse de l'instruction " 3 " est placée sur le bus d'adresse L'action du tampon apparaît, car ADl apparaît sur le bus d'adresse seulement après l'arrivée de la valeur " 3 " sur le busd'adresse Ainsi, AD est avancé pas à pas de DAB au tampon DAB jusqu'au bus d'adresse. AD 2 est retardé dans le tampon DAB 38 (figure 2 D) plus longtemps pour permettre à la fois à AD 1 et à " 4 " d'apparaître sur le busd'adresse AD 2 peut rester pendant deux cycles, en raison de l'arrivée de DO Autrement dit, l'arrivée de D invalide le décodeur par l Daction de IRSO. Par conséquent, aucune nouvelle adresse de donnée ne peut être générée. Le tableau I montre une série-d'instructions résul- tant des combinaisons montrées sur la figure 2 La pre- mière instruction I est une instruction RR 1 "lecture et registre 1 " qui demande une extraction de donnée, combinée avec une opération MVP("mouvement positif vers A 0) I 1 est une instruction RR 1-l et addition à A O (il convient de noter que I O comprend un + 1 qui est un incrément pour le registre d'index afin que l'extraction suivante à ce registre provienne de la position de mémoire adjacente suivante) I 2 est une instruction RR 3 "lecture registre 3 " et "mouvement positif vers A, 13 est un saut et I 4 donne la destination du saut I 5 est une instruction "écriture au registre 1 " Etant donné que I contient un décrément, on devrait renvoyer R 1 du registre 1 à la première position. En raison des retards présents dans la machine, le compteur PC n'est pas affecté par le saut avant que I 41 c'est-à-dire la destination du saut, apparaisse sur le bus I/D, de sorte que I 5 reste extrait à partir de l'an- cienne valeur de PC Lorsque 14 apparait sur le bus I/D, le compteur PC est modifié afin que l'extraction sui- vante s'effectue pour I o à partir de la position 80 Le "'saut" sur les instructions "PC égale" aux adresses 3 et 4 n'exige pas de créneau de donnée Par conséquent, sous l'action du générateur DOB, un flot de trois instruc- tions formant une rangée sans créneau de donnée inter- médiaire apparait après l'adresse AD 2 L'instruction "écri- ture au registre 1 ", à savoir l'instruction IV, a pour résultat l'insertion de AD 5 dans trois créneaux apres l'arrivée de la valeur " 5 sur le bus d'adresse (voir figures 2 A 2 E) En raison de l'action du générateur DOB 45, des instructions sont travaillées aussi uniformément que possi- ble et,de plus, D 2 est disponible pendant plusieurs cré- neaux. L'unité logique arithmétique peut effectuer des opérations dépassant un cycle unique Le signal IRSO et la nature de l'instruction peuvent être utilisés pour inhi- ber une seconde exécution de IR 3 Il est possible d'obtenir de l'élasticité en utilisant le retard du registre I. Le tableau Il montre à titre illustratif des formats d'instructions La partie supérieure de ce tableau montre une instruction de type II L'instruction représentée est une instruction de lecture indirecte Le premier segment de l'instruction indique le type d'extraction de donnée. Le deuxième segment indique le déplacement à ajouter aux contacts du registre d'index Le troisième segment donne lo la désignation du registre Ces trois segments constituent la règle extraction opérande Le quatrième segment donne l'opération à exécuter. La partie inférieure du tableau Il montre à titre illustratif une instruction de type I Le premier segment d'information binaire indique qu'un contenu de registre particulier doit être utilisé comme opérande Il convient de noter qu'une extraction de registre n'exige pas un cy- cle de bus Le deuxième segment indique l'identité du registre et le troisième segment indique une opération à exécuter Par exemple, l'instruction deffandée peut être "prendre le contenu d'un registre et l'additionner au contenu de l'accumulateur" Un avantage de l'architecture particulière de l'invention est la souplesse d'utilisation des positions de bits des;instructions, c'est-à-dire l'absence des cri- tères rigides imposés aux formats des instructions. TABLEAU Il INSTRUCTION DE TYPE II LECTURE INDIRECTE ET REGISTRE D'INDEX OPERATIONS, LECTURE, DEPLACEMENT t DESIGNATION 4 MVP AO> INDIRECTE' A ADDITIONNER ' REGISTRE (OPERATION) AU REG INDEX INSTRUCTION DE TYPE I OPERATION LOCALE OPERATION LOCALE t @GISTRE A SELECT I r INTERNE (OPERATION) Il va de soi que de nombreuses modifications peu- vent être apportées au microprocesseur décrit et repré- senté sans sortir du cadre de l'invention. REVENDICATIONS 1 Microprocesseur comprenant une mémoire ( 19) qui peut être adressée par un compteur ( 15) d'instruction ou une adresse de donnée et qui réagit à ce compteur ou à cette adresse pour produire, respectivement, une instruction ou un mot de données cette instruction contenant une information indiquant une opération à exécuter par une unité arithmétique ( 41), les données pouvant être travail- lées par cette unité arithmétique, le processeur étant caractérisé en ce qu'il comporte des moyens ( 45) destinés à imbriquer des adresses d'instruction et des adresses de données présentées à la mémoire et à imbriquer des ins- tructions et des données sortant de la mémoire afin qu'il n'apparaisse aucun créneau de synchronisation perdu et que des ordres et des données correspondantes arrivent à l'ins- tant d'exécution à l'unité logique arithmétique. 2 Procédé pour imbriquer l'accès à la mémoire d'un microprocesseur, caractérisé en ce qu'il consiste à créer un créneau de synchronisation pour une instruction N, Si cela est nécessaire, immédiatement après l'extraction d'une instruction N + K, K étant déterminé par le retard du pipe- line, et à extraire une instruction immédiatement après chaque créneau de donnée. 3 Microprocesseur caractérisé en ce qu'il comporte un élément ( 35) destiné à tamponner des adresses de données vers une mémoire ( 19), des moyens destinés à mémoriser plu- sieurs instructions sortant de ladite mémoire et des moyens ( 45) destinés à commander l'élément de tamponnement et des moyens de mémorisation, ainsi que l'application d'adresses d'instructions et d'adresses de données à ladite mémoire. 4 Microprocesseur caractérisé en ce qu'il comporte une mémoire ( 19) emmagasinant des données et des instruc- tions, un compteur ( 153 d'instruction destiné à transmettre des adresses d'instruction à ladite mémoire, des moyens destinés à transmettre des adresses de mémoire à ladite mémoire, des moyens ( 41) sensibles aux instructions et qui effectuent des opérations arithmétiques sur les données en réponse à une instruction, des moyens destinés à emmagasiner 2513-410 plusieurs instructions pour les transmettre aux moyens effectuant des opérations arithmétiques, et des moyens ( 45) destinés à commander si une adresse de donnée ou une adresse d'instruction est appliquée à la mémoire et à com- mander des moyens d'emmagasinage d'instructions pour syn- chroniser l'arrivée d'instructions avec les données appro- priées aux moyens effectuant une opération arithmétique.