Arquitectura de Von Neumann: Componentes, Buses, Periféricos y Funcionamiento del Ordenador
Arquitectura de Von Neumann
Su idea clave es almacenar el programa en la memoria para que se ejecute en un único procesador. A partir de aquí, todos los ordenadores funcionan de esta forma.
CPU (Unidad Central de Proceso)
La CPU está formada por los siguientes elementos:
- UC (Unidad de Control): se encarga de interpretar y gestionar las instrucciones máquina del programa, así como de generar señales de control para realizar las operaciones.
- Decodificador de instrucciones (D.I.)
- Reloj: mide el tiempo.
- Secuenciador: marca el orden de las instrucciones y las sincroniza con el reloj.
- ALU (Unidad Aritmético-Lógica): su función es operar los datos que recibe según lo indique la UC. Las operaciones que realiza son aritméticas y booleanas.
- Unidad de coma flotante (FPU): también llamada unidad de punto flotante, coprocesador matemático, unidad de procesamiento matemático (NPU) o procesador de datos numéricos (NDP).
Registros
Los registros se dividen en dos grupos:
- Visibles al usuario:
- Registro de dirección
- Registro de datos
- Registro de condición
- De control y estado:
- Contador de programa (CP)
- Registro de instrucción (RI)
- Registro de dirección de memoria (RDM)
- Registro de intercambio de memoria (RIM)
Buses de comunicación
Las distintas unidades, incluida la memoria, se comunican entre sí a través de buses, que son líneas eléctricas o incluso ópticas que transmiten información entre unidades; por cada hilo se transmite 1 bit. El bus marca la cantidad de datos que un ordenador es capaz de procesar a la vez, indicando si es de 16, 32 o 64 bits.
Tipos de bus
- Bus de datos: permite el intercambio de datos entre la CPU y las unidades externas (memoria, periféricos…). Su velocidad se mide en MHz o GHz.
- Bus de direcciones: transmite la dirección entre la CPU y la memoria, indicando en qué posición se encuentra un dato. Es importante destacar que a mayor tamaño de bus, mayor será el número de datos a los que se puede acceder.
- Bus de 10 bits → 210 = 1024 posiciones
- Bus de 16 bits → 216 = 65 536 posiciones
- Bus de control: genera los impulsos de control creados por la UC para gobernar el ordenador. No tiene importancia la cantidad de bits.
Tipos de memoria
- Caché: memoria muy rápida situada entre la CPU y la RAM, que contiene datos que seguramente serán utilizados en breve.
- Memoria RAM: memoria rápida que contiene los programas y datos que posiblemente se ejecutarán o que ya se han ejecutado y se cree que volverán a ejecutarse.
Historia de los ordenadores
En la era mecánica se utilizaban las tarjetas perforadas, y en la era electrónica, las cintas magnéticas.
- Los ordenadores mecánicos eran más grandes y pesados, mientras que los electrónicos eran menos voluminosos y más ligeros.
- En la era mecánica la información era más fiable que en la electrónica.
Era mecánica: Máquina de diferencias de Babbage, Máquina analítica de Babbage, máquina de calcular de Blaise Pascal.
Era electrónica: MANIAC, IBM 360.
Los periféricos
Periféricos de entrada
Son aquellos que sirven para introducir información en la máquina.
Ejemplos: teclado, ratón, cámara web, escáner, micrófono, lector de código de barras, joystick, pantalla táctil.
Periféricos de salida
Muestran la información una vez procesada por la máquina.
Ejemplos: monitor, impresora, altavoces, auriculares, fax…
Periféricos de entrada/salida
Periféricos de almacenamiento
Se encargan de mostrar o guardar datos al procesador. Actúan tanto de entrada como de salida, pero forman un grupo especial al no poder mostrar esta información directamente al usuario.
Ejemplos: disco duro, lectora, grabadora de CD/DVD/Blu-ray, memorias flash (USB), cintas magnéticas, disquetes, discos extraíbles.
Periféricos de comunicación
Se comportan igual que los de almacenamiento, ya que pueden recibir o enviar datos, por lo que también tienen función de E/S.
Ejemplos: fax-módem, tarjeta de red, tarjeta wireless, Bluetooth, controladora de puerto serie, puerto paralelo, infrarrojo, USB…
Funcionamiento del ordenador
Cuando encendemos un ordenador, se producen internamente los siguientes pasos:
- Cuando el usuario enciende el ordenador, la fuente de alimentación envía corriente a todos los dispositivos hardware, incluida la CPU.
- Cuando la CPU recibe la corriente, envía una orden al chip de memoria ROM de la BIOS (Basic Input/Output System), donde se encuentran grabadas las rutinas de POST (Power-On Self-Test), o test de comprobación de encendido.
- Al ejecutar el test, si la BIOS no encuentra nada anómalo (suele revisar el estado de los dispositivos básicos: CPU, memoria RAM, teclado…), continúa el proceso con la localización de la CPU.
- La BIOS busca la primera instalación del sistema operativo; en pantalla aparece el logotipo de Windows, Linux, etc. El sistema operativo se va cargando en la RAM para posteriormente ser ejecutado por la CPU.
- 4.1 Puede ocurrir que tengamos instalados varios sistemas operativos; en ese caso, la BIOS nos dará un programa de arranque para elegir uno de ellos. La BIOS siempr carga la primera posición de memoria del disco duro.
- Una vez ejecutado el sistema operativo, todo programa ejecutado seguirá el proceso: M.S → RAM → CPU.
- Al apagar el ordenador, se guardan todos los registros del sistema operativo y la RAM queda totalmente vaciada.
Software del ordenador
Definición: conjunto de programas, instrucciones y reglas informáticas para ejecutar ciertas tareas en la computadora.
Clasificación del software
Según el tipo de trabajo realizado:
- Software de sistema: permite que el hardware de un ordenador funcione correctamente. Realiza la administración de la parte física del ordenador. Ejemplos: sistemas operativos, drivers, herramientas y diagnósticos.
- Software de aplicación: ayuda a realizar tareas de propósito específico o general, cumpliendo la función de asistir al usuario. Ejemplos: aplicaciones ofimáticas, aplicaciones gráficas, navegadores, hojas de cálculo.
- Software de programación: ayuda al usuario a desarrollar nuevo software, facilitando la creación de distintos programas. Debe permitir una interacción sencilla, con sistemas de compilación directos e interfaz gráfica agradable. Ejemplos: Visual Basic, C++, Java, Borland.