Unità di esecuzione

Nell'ambito dell'ingegneria informatica, un'unità di esecuzione è la componente di un'unità di elaborazione che esegue le operazioni e i calcoli trasmessi dall'unità di istruzione..[1] Può avere una propria unità di sequenza di controllo interna (da non confondersi con l'unità di controllo principale di una CPU), alcuni registri[2] e altre unità interne come l'unità logica e aritmetica[3], l'unità di generazione degli indirizzi (AGU), l'unità di calcolo in virgola mobile, l'unità di load/store, l'unità di esecuzione dei fork[4] o altri componenti più piccoli e più specifici. Può essere adattata per supportare un determinato tipo di dati, come numeri interi o in virgola mobile.[5]

È comune che le moderne unità di elaborazione abbiano più unità funzionali che lavorano in parallelo all'interno delle unità di esecuzione, fatto che viene definito progettazione superscalare.[6] La disposizione più semplice consiste nell'utilizzare una singola unità di gestione del bus per gestire l'interfaccia di memoria e le altre per eseguire i calcoli. Inoltre, le moderne unità di esecuzione sono di solito di tipo pipeline.

Note

  1. ^ (EN) Execution Model Overview, su intel.com.
  2. ^ (EN) AMD Instinct™ MI100 microarchitecture — ROCm Documentation, su rocm.docs.amd.com.
  3. ^ (EN) Intel® Iris® Xe GPU Architecture, su intel.com.
  4. ^ (EN) David Kanter, Intel's Haswell CPU Microarchitecture, su realworldtech.com, 13 novembre 2012.
  5. ^ (EN) "Execution Unit" discussion from the University of Massachusetts Amherst
  6. ^ (EN) William Cohen, Superscalar Execution, su Red Hat Developer, 14 marzo 2016.
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica