Pipeline (computing)In computing, a pipeline, also known as a data pipeline, is a set of data processing elements connected in series, where the output of one element is the input of the next one. The elements of a pipeline are often executed in parallel or in time-sliced fashion. Some amount of buffer storage is often inserted between elements. Computer-related pipelines include: Instruction pipelines, such as the classic RISC pipeline, which are used in central processing units (CPUs) and other microprocessors to allow overlapping execution of multiple instructions with the same circuitry.
Circuit RLCEn électrocinétique, un circuit RLC est un circuit linéaire contenant une résistance électrique, une bobine (inductance) et un condensateur (capacité). Il existe deux types de circuits RLC, série ou parallèle selon l'interconnexion des trois types de composants. Le comportement d'un circuit RLC est généralement décrit par une équation différentielle du second ordre (là où des circuits RL ou circuits RC se comportent comme des circuits du premier ordre).
Automate finithumb|upright=2|Fig. 1 : Une hiérarchie d'automates. Un automate fini ou automate avec un nombre fini d'états (en anglais finite-state automaton ou finite state machine ou FSM) est un modèle mathématique de calcul, utilisé dans de nombreuses circonstances, allant de la conception de programmes informatiques et de circuits en logique séquentielle aux applications dans des protocoles de communication, en passant par le contrôle des processus, la linguistique et même la biologie.
Circuit LCUn circuit LC est un circuit électrique contenant une bobine (L) et un condensateur (Capacité). C'est ainsi qu'on obtient le phénomène de résonance électrique. Ce type de circuit est utilisé dans les filtres, les tuners et les mélangeurs de fréquences. Par conséquent, son utilisation est répandue dans les transmissions sans fil en radiodiffusion, autant pour l'émission que la réception. thumb|200px|Circuit LC série et parallèle thumb|upright=1.
Langage intermédiaireEn informatique, un langage intermédiaire (parfois abrégé en IL, de l'anglais Intermediate Language) est le langage d'une machine abstraite conçu pour l'analyse d'un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d'abord le code source d'un programme en une forme plus adaptée pour les transformations d'amélioration de code, comme un état intermédiaire avant de générer du code objet ou du langage machine pour une machine cible, c’est-à-dire la machine sur laquelle sera exécutée le programme.
Transducteur finiEn informatique théorique, en linguistique, et en particulier en théorie des automates, un transducteur fini (appelé aussi transducteur à états finis par une traduction littérale de l'anglais finite state transducer) est un automate fini avec sorties. C'est une extension des automates finis. Ils opèrent en effet sur les mots sur un alphabet d'entrée et, au lieu de simplement accepter ou refuser le mot, ils le transforment, de manière parfois non déterministe, en un ou plusieurs mots sur un alphabet de sortie.
Automate fini déterministeUn automate fini déterministe, parfois abrégé en AFD (en anglais deterministic finite automaton, abrégé en DFA) est un automate fini dont les transitions à partir de chaque état sont déterminées de façon unique par le symbole d'entrée. Un tel automate se distingue ainsi d'un automate fini non déterministe, où au contraire plusieurs possibilités de transitions peuvent exister simultanément pour un état et un symbole d'entrée donné.
Pipeline (architecture des processeurs)330px|droite|Plan d'un pipeline générique à trois étapes En microarchitecture, un pipeline (ou chaîne de traitement), est l'élément d'un processeur dans lequel l'exécution des instructions est découpée en plusieurs étapes. Le premier ordinateur à utiliser cette technique est l'IBM Stretch, conçu en 1961. Avec un pipeline, le processeur peut commencer à exécuter une nouvelle instruction sans attendre que la précédente soit terminée. Chacune des étapes d’un pipeline est appelé étage.
Circuit RLUn circuit RL est un circuit électrique contenant une résistance et une bobine ; il est utilisé dans diverses applications, comme filtre passe-bas ou passe-haut, ou dans les convertisseurs de courant continu. Contenant deux composants, il se décline en deux versions différant dans la disposition des composantes (série ou parallèle).
Automate fini non déterministeUn automate fini (on dit parfois, par une traduction littérale de l'anglais, machine à états finis, au lieu de machine avec un nombre fini d'états ou machine à états finie ou machine finie à états), finite-state automaton ou finite-state machine (FSA, FSM), est une machine abstraite qui est un outil fondamental en mathématiques discrètes et en informatique. On les retrouve dans la modélisation de processus, le contrôle, les protocoles de communication, la vérification de programmes, la théorie de la calculabilité, dans l'étude des langages formels et en compilation.
Instruction schedulingIn computer science, instruction scheduling is a compiler optimization used to improve instruction-level parallelism, which improves performance on machines with instruction pipelines. Put more simply, it tries to do the following without changing the meaning of the code: Avoid pipeline stalls by rearranging the order of instructions. Avoid illegal or semantically ambiguous operations (typically involving subtle instruction pipeline timing issues or non-interlocked resources).
Allocation de registresDans un compilateur, l'allocation de registres est une étape importante de la génération de code. Elle vise à choisir judicieusement dans quel registre du processeur seront enregistrées les variables durant l'exécution du programme que l'on compile. Les registres sont des mémoires internes au processeur, généralement capables de contenir un mot machine. Les opérations sur des valeurs rangées dans des registres sont plus rapides que celles sur des valeurs en mémoire vive, quand ce ne sont pas les seules possibles.
Execution unitIn computer engineering, an execution unit (E-unit or EU) is a part of the central processing unit (CPU) or graphics processing unit (GPU) that performs the operations and calculations forwarded from the instruction unit. It may have its own internal control sequence unit (not to be confused with the CPU's main control unit), some registers, and other internal units such as an arithmetic logic unit, address generation unit, floating-point unit, load–store unit, branch execution unit or some smaller and more specific components.
Automate quantiqueEn informatique quantique et en informatique théorique, un automate fini quantique est une généralisation des automates finis où un mot est accepté selon le résultat d'une certaine mesure. Il existe plusieurs modèles des automates finis quantiques ; le plus restrictif est celui des automates dits « measure-once » de ; un autre est celui des automates « measure-many » de . Ces deux modèles sont très différents l'un de l’autre ; le modèle « measure-once » se rapproche plus de la théorie classique des automates finis.
Machine de MealyEn informatique théorique, notamment en théorie des automates, et en théorie de la calculabilité, une machine de Mealy ou automate de Mealy est un transducteur fini (i.e. un automate fini avec une sortie) pour lequel les sorties dépendent à la fois de l'état courant et des symboles d'entrée. Cela signifie que l'étiquette de chaque transition est un couple formé d'une lettre d'entrée et d'une lettre de sortie. En particulier, la longueur du mot de sortie est égale à la longueur du mot d'entrée.
Circuit électroniquealt=Circuit électronique du RaspberryPi|vignette|Circuit électronique du RaspberryPi Un circuit électronique est un circuit électrique comprenant des composants électroniques interconnectés dont le but est de remplir une fonction. Un circuit électronique est souvent réalisé sur un circuit imprimé et, parmi ses composants, certains sont fréquemment eux-mêmes des circuits électroniques intégrés. Un circuit électronique peut être étudié comme une boîte noire dont on ne considère que les grandeurs électriques présentes à chacune de ses connections extérieures.
Génération de code natifLa génération de code natif est l'étape du processus de compilation transformant l'arbre syntaxique abstrait enrichi d'informations sémantiques en code machine ou en bytecode spécialisé pour la plateforme cible. C'est l'avant-dernière étape du processus de compilation qui se situe avant l'édition des liens. La phase de génération de code natif inclut généralement : Le choix des instructions à émettre ; L'ordonnancement des instructions : dans quel ordre émettre les instructions.
Chemin critiqueDans un problème d'ordonnancement en informatique théorique, ou en gestion de projet, un chemin critique désigne la (ou les) liste(s) ordonnée(s) des opérations nécessaires pour obtenir le résultat voulu, dont la durée totale donne la durée du projet. C'est donc aussi, parmi les différents chemins constitués par les tâches (ordonnées selon la nécessité du projet), le (les) plus long(s) chemin(s) obtenu(s) ; il y a deux chemins critiques lorsque les deux listes de tâches correspondantes qui sont prévues demandent la même durée.
Processeur superscalaireUn processeur est dit superscalaire s'il est capable d'exécuter plusieurs instructions simultanément parmi une suite d'instructions. Pour cela, il comporte plusieurs unités de calcul, et est capable de détecter l'absence de dépendances entre instructions. Un processeur superscalaire cherche à exploiter le parallélisme entre instructions pour accélérer l'exécution des programmes. Cette approche évite de modifier les programmes pour exploiter le parallélisme : le processeur détecte lui-même les instructions pouvant être exécutées en parallèle, contrairement à d'autres approches, comme le VLIW.
Circuit intégréLe circuit intégré (CI), aussi appelé puce électronique, est un composant électronique, basé sur un semi-conducteur, reproduisant une ou plusieurs fonctions électroniques plus ou moins complexes, intégrant souvent plusieurs types de composants électroniques de base dans un volume réduit (sur une petite plaque), rendant le circuit facile à mettre en œuvre. Il existe une très grande variété de ces composants divisés en deux grandes catégories : analogique et numérique.