Il existe de nombreux types d'architectures informatiques.
Une façon de classer les architectures informatiques est le nombre d'instructions exécutées par horloge. De nombreuses machines informatiques lisent une instruction à la fois et l'exécutent (ou mettent beaucoup d'efforts pour agir comme siils le font, même si en interne ils font des trucs superscalaires et hors service). J'appelle ces machines des machines "von Neumann", car toutes ont un goulot d'étranglement von Neumann. Ces machines incluent les architectures CISC, RISC, MISC, TTA et DSP. Ces machines comprennent les machines à accumulateur, les machines à registre et les machines à empiler. D'autres machines lisent et exécutent plusieurs instructions à la fois (VLIW, super-scalaire), qui dépassent la limite d'une instruction par horloge, mais atteignent toujours le goulot d'étranglement de von Neumann avec un nombre légèrement plus élevé d'instructions par horloge. Pourtant, d'autres machines ne sont pas limitées par le goulot d'étranglement de von Neumann, car elles préchargent toutes leurs opérations une fois à la mise sous tension, puis traitent les données sans autre instruction. Ces machines non Von-Neumann incluent des architectures de flux de données,
Une autre façon de catégoriser les architectures informatiques est la ou les connexions entre le CPU et la mémoire. Certaines machines ont une mémoire unifiée, de sorte qu'une seule adresse correspond à un seul endroit en mémoire, et lorsque cette mémoire est RAM, on peut utiliser cette adresse pour lire et écrire des données, ou charger cette adresse dans le compteur de programme pour exécuter du code. J'appelle ces machines des machines Princeton. D'autres machines ont plusieurs espaces de mémoire distincts, de sorte que le compteur de programmes se réfère toujours à la "mémoire de programme", quelle que soit l'adresse qui y est chargée, et les lectures et écritures normales vont toujours à la "mémoire de données", qui est un emplacement séparé contenant généralement différents même lorsque les bits de l'adresse de données sont identiques aux bits de l'adresse de mémoire du programme. Ces machines sont "pure Harvard" ou "
Quelques personnes utilisent une définition étroite de "machine von Neumann" qui n'inclut pas les machines Harvard. Si vous êtes une de ces personnes, quel terme utiliseriez-vous pour le concept plus général de "machine qui a un goulot d'étranglement von Neumann", qui comprend à la fois les machines Harvard et Princeton, et exclut NON-VON?
La plupart des systèmes embarqués utilisent l'architecture Harvard. Quelques processeurs sont des «Harvard purs», ce qui est peut-être l'arrangement le plus simple à intégrer dans le matériel: le bus d'adresse vers la mémoire de programme en lecture seule est exclusivement connecté au compteur de programme, comme de nombreux premiers micropip PICchicricrip. De plus, certaines machines Harvard modifiées placent également des constantes dans la mémoire du programme, qui peuvent être lues avec une instruction spéciale "lire les données constantes de la mémoire du programme" (différente de l'instruction "lire dans la mémoire des données"). Le logiciel exécuté sur les types de machines Harvard ci-dessus ne peut pas modifier la mémoire du programme, qui est en fait la ROM de ce logiciel. Certains systèmes embarqués sont "auto-programmables", généralement avec une mémoire de programme dans la mémoire flash et un "bloc d'effacement de mémoire flash" spécial et une instruction spéciale "écriture de bloc de mémoire flash" (différente de l'instruction normale "écriture dans la mémoire de données"), en plus de l'instruction "lecture des données de la mémoire programme". Plusieurs Microchip PICmicros et Atmel AVR plus récents sont des machines Harvard modifiées auto-programmables.
Une autre façon de classer les processeurs est leur horloge. La plupart des ordinateurs sont synchrones - ils ont une seule horloge globale. Quelques CPU sont asynchrones - ils n'ont pas d'horloge - y compris les ILLIAC I et ILLIAC II, qui étaient à une époque les supercalculateurs les plus rapides sur terre.
Veuillez aider à améliorer la description de toutes sortes d'architectures informatiques sur
http://en.wikibooks.org/wiki/Microprocessor_Design/Computer_Architecture
.