Hay muchos tipos diferentes de arquitecturas informáticas.
Una forma de categorizar arquitecturas de computadora es por número de instrucciones ejecutadas por reloj. Muchas máquinas informáticas leen una instrucción a la vez y la ejecutan (o ponen mucho esfuerzo en actuar como sihacen eso, incluso si internamente hacen cosas extravagantes y superescalares). Llamo a estas máquinas máquinas "von Neumann", porque todas tienen un cuello de botella von Neumann. Dichas máquinas incluyen arquitecturas CISC, RISC, MISC, TTA y DSP. Dichas máquinas incluyen máquinas acumuladoras, máquinas registradoras y máquinas apiladoras. Otras máquinas leen y ejecutan varias instrucciones a la vez (VLIW, súper escalar), que rompen el límite de una instrucción por reloj, pero aún alcanzan el cuello de botella de von Neumann en un número ligeramente mayor de instrucciones por reloj. Sin embargo, otras máquinas no están limitadas por el cuello de botella de von Neumann, porque precargan todas sus operaciones una vez al momento del encendido y luego procesan los datos sin más instrucciones. Dichas máquinas que no son de Von-Neumann incluyen arquitecturas de flujo de datos,
Otra forma de clasificar las arquitecturas de la computadora es mediante las conexiones entre la CPU y la memoria. Algunas máquinas tienen una memoria unificada, de modo que una sola dirección corresponde a un solo lugar en la memoria, y cuando esa memoria es RAM, uno puede usar esa dirección para leer y escribir datos, o cargar esa dirección en el contador del programa para ejecutar el código. Yo llamo a estas máquinas máquinas Princeton. Otras máquinas tienen varios espacios de memoria separados, de modo que el contador del programa siempre se refiere a la "memoria del programa" sin importar la dirección cargada, y las lecturas y escrituras normales siempre van a la "memoria de datos", que es una ubicación separada que generalmente contiene diferentes información incluso cuando los bits de la dirección de datos son idénticos a los bits de la dirección de memoria del programa. Esas máquinas son "Harvard puro" o "
Algunas personas usan una definición limitada de "máquina von Neumann" que no incluye las máquinas Harvard. Si usted es una de esas personas, entonces, ¿qué término usaría para el concepto más general de "una máquina que tiene un cuello de botella de von Neumann", que incluye las máquinas Harvard y Princeton, y excluye NON-VON?
La mayoría de los sistemas integrados utilizan la arquitectura Harvard. Algunas CPU son "Harvard puro", que es quizás el arreglo más simple para construir en hardware: el bus de direcciones a la memoria del programa de solo lectura está conectado exclusivamente al contador del programa, como muchos de los primeros Microchip PICmicros. Algunas máquinas Harvard modificadas, además, también colocan constantes en la memoria del programa, que se puede leer con una instrucción especial "leer datos constantes de la memoria del programa" (diferente de la instrucción "leer de la memoria de datos"). El software que se ejecuta en los tipos anteriores de máquinas Harvard no puede cambiar la memoria del programa, que es efectivamente ROM para ese software. Algunos sistemas integrados son "auto-programables", típicamente con memoria de programa en memoria flash y un "bloque de borrado de memoria flash" especial instrucción y una instrucción especial "escribir bloque de memoria flash" (diferente de la instrucción normal "escribir en memoria de datos"), además de la instrucción "leer datos de la memoria de programa". Varios AVR Microchip PICmicros y Atmel más recientes son máquinas Harvard modificadas y programables.
Otra forma de clasificar las CPU es por su reloj. La mayoría de las computadoras son síncronas: tienen un reloj global único. Algunas CPU son asíncronas, no tienen reloj, incluidas las ILLIAC I e ILLIAC II, que en algún momento fueron las supercomputadoras más rápidas del mundo.
Ayude a mejorar la descripción de todo tipo de arquitecturas informáticas en
http://en.wikibooks.org/wiki/Microprocessor_Design/Computer_Architecture
.