Un processeur (tel que les processeurs Intel i3 / i5 / i7 / Xeon) doté d'une mémoire cache sur puce intégrée peut-il l'utiliser comme seule RAM fonctionnelle, sans aucune banque de mémoire externe connectée?
Ou doit- il y avoir de la RAM externe, et le cache ne peut pas être utilisé seul?
Les processeurs modernes de bureau / serveur ont souvent plus de RAM en cache interne que la plupart des ordinateurs des années 1990, alors il devrait y en avoir suffisamment pour exécuter du code simple.
Les processeurs antérieurs à la mise en cache, tels que le 6502, ne pourraient rien faire, car la RAM interne du processeur ne représentait que quelques octets pour le compteur d'adresses et les accumulateurs.
Il ne s’agit pas d’exécuter un système d’exploitation moderne, mais un simple code programmé dans une ROM personnalisée ou saisi manuellement avec un clavier hexadécimal.
la source
Réponses:
Voir ce compte-rendu extrêmement détaillé de la séquence de démarrage du PC: http://www.drdobbs.com/parallel/booting-an-intel-architecture-system-par/232300699?pgno=2
Vous pouvez observer cela en exécutant un PC sans RAM: il émettra une série de bips. Le programme qui les lit est exécuté à partir de la ROM flash du BIOS.
J'ai également vu ce comportement sur certains processeurs ARM. Il y aura des registres de configuration dans le SoC qui vous permettront d’utiliser le cache en tant que RAM au début de la séquence de démarrage, afin d’exécuter un programme qui trouve, énumère et configure la DRAM.
la source
INVD
(lorsque vous quittez le mode CAR, invalidez le cache au lieu d'avoir des données inutiles écrites en mémoire, éventuellement quelque chose de précieux).Généralement, la mémoire cache n'est pas adressable. Un programme ne peut pas stocker ou récupérer des données intentionnellement à partir de celui-ci.
la source
Bien que cela ne concerne pas directement les familles de processeurs spécifiées dans la question, le schéma ci-dessous fonctionne avec les processeurs x86 antérieurs. Il est donc possible de fonctionner sans RAM ni cache, bien que cette approche nécessite des compétences de programmation créatives.
Dans les années 1980, je suis tombé sur un modèle de récepteur radio qui décodait les signaux horaires MSF diffusés au Royaume-Uni. Cette conception utilisait un processeur Z80 et ne disposait que d’une ROM pour le stockage du programme. L'ensemble du traitement et du stockage des données a été effectué à l'aide des registres internes du processeur. Cela signifiait évidemment qu'il ne pouvait y avoir aucun appel de sous-programme car il y avait de la mémoire disponible pour contenir la pile.
À l'époque, le coût de la RAM était élevé et, s'agissant d'un projet de loisir, il était important de réduire les coûts, en dehors du fait qu'il s'agissait d'un exercice académique intéressant. C'était aussi avant l'époque des microcontrôleurs largement disponibles (un 8751 avec un eprom coûtant plus de 100 £ IIRC).
la source
Généralement, un processeur nécessite une horloge externe. Mais avec ça, oui ça peut.
la source