Avec l'utilisation de multiples caches a surgi l'idée de dédier un cache au stockage des données et un cache au stockage des instructions. L'intérêt réside dans la possibilité pour le processeur de dissocier le mécanisme d'exécution des instructions d'avec celui de recherche et décodage des instructions.