Vous êtes sur la page 1sur 39

Instituto Tecnológico de Tuxtepec

Arquitectura de Computadoras

Unidad 1
Programa
1 Modelo de arquitecturas de cómputo.
1. Modelos de arquitecturas de cómputo.
1. Clásicas.
2. Segmentadas.
3. De multiprocesamiento.
2. Análisis de los componentes.
1. CPU.
1. Arquitecturas.
2. Tipos.
3. Características.
4. Funcionamiento.
1.2.2 Memoria.
1. Arquitecturas.
2. Tipos.
3. Características.
4. Funcionamiento.
2. Dispositivos de I/O.
1. Arquitecturas.
2. Tipos.
3. Características.
4. Funcionamiento.
Ordenador o Computadora

Sistema de calculo de propósito general


que incorpora una unidad central de
proceso, memoria y dispositivos de
entrada y salida.
Del Diccionario de Electrónica e informática Orbis-Marcombo 1986.
Características

– Habilidad para realizar operaciones aritméticas y


lógicas.
– Memoria. Puede retener información por un periodo de
tiempo dado.
– Es programable. Efectúa una serie de operaciones en
un orden determinado.
– Capacidad de recibir información del mundo exterior y
entregar resultados de sus cálculos.
Jerarquía de un Sistema de
Computo
Computadora

Subsistema de
Procesador
entrada y salida

Subsistema de
CPU
Memoria

Unidad de
ALU
Control
Flujo de información en el CPU

Control Resultados
Subsistema
de Memoria

Códigos de Datos
Operación
Estado
Unidad de Control Unidad Lógica
Control Aritmética
1.1.1 Modelos de arquitectura de
computo clásicas
Arquitectura Mauchly-Eckert (VonNewman)
Concepto de programa almacenado

Bus principal Memoria Principal


Procesador
Almacena
Unidad de el programa y
Control los datos

ALU

Registros Entrada y salida


Arquitectura Harvard
Espacios de memoria de datos y programa
separados

Bus de Bus de
programa Procesador datos
Memoria de datos
Unidad de
Memoria de Control
programa
ALU

Registros Entrada y salida


1.1.2 Arquitecturas
segmentadas
Las arquitecturas segmentadas aparecieron a
mediados de los años 1960's como una manera de
aumentar el rendimiento sin implicar un nivel
masivo de paralelismo
Durante los años 1980's fueron una de las ideas
centrales de los procesadores RISC, buscando
alcanzar el objetivo de que se ejecutara una
instrucción cada ciclo de maquina.
En Inglés se conocen como “pipelined procesors” o
procesadores entubados
Segmentación o entubamiento
consiste en dedicar unidades especificas del
procesador a cada una de las partes del ciclo de
instrucción y ejecutarlas paralelamente
Mejora dramáticamente el rendimiento debido a que
en los procesadores modernos se tienen hasta 14
etapas en el ciclo de instrucción
Segmentación del cause
La unidad de control se subdivide en dos o más
unidades funcionales, cada una encargada de llevar
a cabo una parte del ciclo de instrucción.
Se comunican a través de una cola de instrucciones
(Pipeline)

Unidad de Unidad de
Búsqueda Cola de Instrucciones ejecución
Segmentación del cauce(2)
La mejora en el rendimiento no es proporcional al
numero de segmentos en el cauce debido a que cada
etapa no toma el mismo tiempo en realizarse,
además de que se puede presentar competencia por
el uso de algunos recursos como la memoria
principal
Espera Espera

Búsqueda Ejecución
CPU de multiprocesamiento
SISO – (Single Instruction, Single Operand )
computadoras independientes
SIMO – (Single Instruction, Multiple Operand )
procesadores vectoriales
MISO – (Multiple Instruction, Single Operand ) No
implementado
MIMO – (Multiple Instruction, Multiple Operand )
sistemas SMP, Clusters
multiprocesamiento
Procesadores vectoriales – Son computadoras
pensadas para aplicar un mismo algoritmo numérico
a una serie de datos matriciales, en especial en la
simulación de sistemas físicos complejos
Sistemas SMP (Simetric Multi Procesesors) – Varios
procesadores comparten la misma memoria
principal y periféricos de I/O, Normalmente
conectados por un bus común
Clusters
Conjuntos de computadoras independientes
conectadas en una red de área local o por un bis de
interconexión y que trabajan cooperativamente para
resolver un problema
1.2-Análisis de los
componentes
1.2.1 – CPU 1.2.1.1- arquitecturas
CISC (Complex Instruction Set Computers) Tienen un
número amplio de instrucciones y modos de
direccionamiento. Se implementan instrucciones
especiales que realizan funciones complejas. El número
de registros del CPU es limitado
RISC (Reduced Instruction Set Computers) Solo se
cuenta con unas pocas instrucciones y modos de
direccionamiento, pero se busca implementarlos de forma
muy eficiente y que todas las instrucciones trabajen con
todos los modos de direccionamiento. Amplio número de
registros en el CPU
1.2.1.2 Tipos de CPU
Por tamaño del ALU o del Bus de conexión al
exterior (8, 16, 32, 64 bits)
De cauce segmentado o no segmentado
CISC o RISC
Von Newan o Harvard
Instrucciones enteras y/o de punto flotante
1.2.1.3 Características de los
CPU
Modelo del programador (Conjunto de registros que
el programador puede utilizar)
Conjunto de instrucciones
Modos de direccionamiento
Ciclo de instrucción
Buses de interconexión
1.2.1.4 Funcionamiento del CPU

Se explicara el funcionamiento de una


computadora imaginaria, cuyo funcionamiento
básico es similar al de la mayoría de las
computadoras de propósito general
Contara con una memoria de 4096 palabras de
16 bits cada una (12 bits de direcciones, 16 bits
de datos)
En cada localidad de memoria se podrá
almacenar un entero de 16 bits o el código de
una instrucción, también de 16 bits.
Componentes del CPU

Registro ACC (16 bits)– Acumulador, se usará


para almacenar uno de los operandos y el
resultado de varias de las instrucciones
MAR – (Memory Address Register 12 bits)
Registro de dirección de memoria, selecciona
a que localidad de memoria se va a leer o a
escribir.
MBR – (Memory Bus Register 16 bits)
Registro de bus de memoria. A través de él se
lee y se escriben los datos.
Componentes del CPU (2)

IR Registro de instrucción (16 bits), guarda el


codigo de la instrucción que se esta ejecutando.
Flags – Registro de Banderas, agrupa a todas
las banderas de la ALU en un registro
Z – Bandera de Cero
O – Sobreflujo
C – Acarreo
PC (Program Counter 16 bits) Contador de
programa – almacena la dirección de la
siguiente instrucción a leer
Codificación de una instrucción

Código de Instrucción

Operación Operando 1 Operando 2

Operando único

Codigo de Operación
Códigos de operación
Código de Instrucción Operación
Operación
0h LOAD (Carga) ACC<-[M]
1h STORE (Almacena) [M]<-ACC
2h ADD (Suma) ACC<-ACC+[M]
3h ADC (Suma con Acarreo) ACC<-ACC+[M]+C
4h SUB (Resta) ACC<-ACC-[M]
5h OR (Or Bit a Bit) ACC<-ACC or [M]
6h AND (And bit a Bit) ACC<-ACC and [M]
7h XOR (Xor Bit a Bit) ACC<-ACC xor [M]
8h SHL (Corrimiento a la Izquierda) ACC<-ACC << 1
9h SHR (Corrimiento a la derecha) ACC<-ACC >> 1
Códigos de operación (2)
Código de Instrucción Operación
Operación
Ah BRA Bifurcación o salto PC<-M
Bh BRZ (Bifurca si es Cero) Si Z==1 => PC<-M
Ch BRC (Bifurca si hay Acarreo) Si C==1 => PC<-M
Dh BRO (Bifurca si hay Sobreflujo) Si O==1 => PC<-M
Eh LDI (Carga Constante Inmediata) ACC <-[PC]
PC<-PC+1
Fh STOP Detener la simulación

Notas: M es el operando
LDI se codifica en dos palabras, una una para el
código de operación y otra para la constante inmediata
Ejemplos de Codificación

Instrucción Opcode Operando Código


LD 123h 0h 123h 0123h
ADD 123h 2h 123h 2123h
BRA 123h Ah 123h A123h
LDI 1234h E000h 1234h E000h, 1234h
STOP Fh No Aplica F000h
Ciclo de instrucción

Búsqueda de la Instrucción

Decodificación de la Instrucción

Ejecución de la Instrucción
Ciclo de instrucción (2)

Búsqueda de instrucción: En esta etapa se lee


el código de la siguiente instrucción a ejecutar
PC Contiene la dirección de la instrucción
IR<-[PC] (se lee de memoria el código)
PC<-PC+1(PC apunta a la siguiente instrucción
Decodificación de la instrucción
Se separa el contenido de IR en Opcode y
Operando
Se busca a que instrucción corresponde el
Opcode
Búsqueda Instrucción
LOAD 023h
Contenido Dir.
XXXXh 000h
Banderas XXXXh 001h
R

002h
A 0023h 002h
M
Acumulador 2024h 003h
BUS ...
003h
002h
PC XXXXh 022h
0023h
R
B 1234h 023h
M
4567h 024h
0023h
IR
...
XXXXh FFFh
CPU
Memoria
Ejecución Instrucción
LOAD 023h
Contenido Dir.
XXXXh 000h
Banderas XXXXh 001h
R

023h
A 0023h 002h
M
1234h
Acumulador 2024h 003h
BUS ...
003h
PC XXXXh 022h
1234h
R
B 1234h 023h
M
4567h 024h
0023h
IR
...
XXXXh FFFh
CPU
Memoria
Búsqueda de la Instrucción
ADD 024h
Contenido Dir.
XXXXh 000h
Banderas XXXXh 001h
R

003h
A 0023h 002h
M
Acumulador 2024h 003h
BUS ...
004h
003h
002h
PC XXXXh 022h
2024h
R
B 1234h 023h
M
4567h 024h
2024h
IR
...
XXXXh FFFh
CPU
Memoria
Ejecución Instrucción ADD 024h
Contenido Dir.
XXXXh 000h
Z=0, C=0, V=0
Banderas XXXXh 001h
R

024h
A 0023h 002h
M
579Bh
Acumulador 2024h 003h
BUS ...
004h
PC XXXXh 022h
4567h
R
B 1234h 023h
M
4567h 024h
2024h
IR
...
XXXXh FFFh
CPU
Memoria
1.2.2 Memorias

Conjunto de celdas de almacenamiento y sus circuitos


asociados
Una palabra es el conjunto de bits que puede leerse o
escribirse en una sola operación
Un grupo de 8 bits es un byte. Un grupo de 4 bits un
Nible
Los tamaños de palabra en las memorias suelen ser
múltiplos de 8 bis
El tamaño de la palabra coincide con el numero de
terminales de datos que poseen.
Memorias (2)

Las lineas de direcciones sirven para escoger en cual de todas las


palabras de la memoria se va a guardar o a leer un dato
El número de lineas de direcciones se determina por el tamaño de
la memoria
T=2N
T - Número de palabras o localidades
N - Número de lineas de direcciones
Es común que el tamaño de las memorias se exprese como un
múltiplo de las siguientes unidades: 1K = 2^10=1024; 1M = 2^20
= 1024*1024, 1G=2^30 = 1024*1024 *1024
Clasificación de Memorias
No volátiles: conservan la información
Volátiles: pierden la información
aún sin suministro de energía
cuando son desenergizadas (RAM)
ROM: Se construyen con diodos, datos
RAM estatica: Se forma con flip-flops.
grabados por el fabricante
Rápida pero cara.
PROM: Los datos se graban quemando
RAM Dinámica: Se almacenan los
fusibles.
datos en la capacitancia parásita de un
transistor. Como el capacitor se EPROM: Similares a la DRAM,
descarga necesita reescribirse el dato guardan los datos en la carga
con frecuencia. Alta densidad, baratas almacenada en la compuerta flotante de
pero lentas. un MOSFET especial. Se borran con
Luz UV
EEPROM y FLASH: Se borran
eléctricamente
1.3 Dispositivos de I/O
1.1 Arquitecturas (Técnicas de interfaz)
Escrutinio (Polling) – se revisa si el dispositivo requiere
atención periódicamente
Interrupciones – El dispositivo llama a una rutina de
atención por medio de un mecanismo de hardware
especial, interrumpiendo la ejecución del programa
principal
Acceso directo a memoria (DMA Direct Memory Access)
El dispositivo de entrada/salida toma el control del Bus
del procesador y transfiere los datos la memoria
directamente.
1.3.1 Tipos
Dispositivos orientados a caracteres – Transfieren
cantidades pequeñas de información a la vez,
comúnmente por medio de escrutinio o
interrupciones, el software los mantiene en un
buffer hasta que son procesados por el Software
Dispositivos orientados a bloques – Transfieren la
información por bloques a la memoria, usando
DMA. Es común que contengan algún tipo de
memoria interna para usar como buffer.
1.3.3 Características
Tipo de comunicación con la PC
Serie: se comunica un bit a la vez
Paralela: se comunica más de un bit a la vez
Velocidad de transferencia
Latencia: Tiempo que toma en ocurrir la primera
transferencia de datos.
Ancho de banda. Velocidad de transferencia de datos
bits/seg.
1.3.4 Funcionamiento
Teclado Impresora térmica
Monitor Ratón
Scaner Unidades de Cinta
Disco Flexible Lectores de código
Disco Duro de barras
Unidad óptica Cámara de vídeo
Impresora láser Tarjeta de sonido

Impresora Módem
inyección Módem ADSL

Vous aimerez peut-être aussi