PDF de programación - Unidad 1a - Arquitectura de Computadoras

Imágen de pdf Unidad 1a - Arquitectura de Computadoras

Unidad 1a - Arquitectura de Computadorasgráfica de visualizaciones

Publicado el 3 de Septiembre del 2018
276 visualizaciones desde el 3 de Septiembre del 2018
1,4 MB
41 paginas
Creado hace 6a (09/02/2014)
Instituto Tecnológico de Morelia

Arquitectura de Computadoras

Unidad 1a

Programa

1 Modelo de arquitecturas de cómputo.
1.1 Modelos de arquitecturas de cómputo.

1.1.1 Clásicas.
1.1.2 Segmentadas.
1.1.3 De multiprocesamiento.

1.2 Análisis de los componentes.

1.2.1 CPU.
1.2.1.1 Arquitecturas.
1.2.1.2 Tipos.
1.2.1.3 Características.
1.2.1.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

Procesador

CPU

ALU

Subsistema de
entrada y salida

Subsistema de

Memoria

Unidad de
Control

Flujo de información en el CPU

Control

Resultados

Subsistema
de Memoria

Códigos de
Operación

Unidad de
Control

Estado
Control

Datos

Unidad Lógica

Aritmética

Arquitectura y organización

Arquitectura: Atributos de una computadora
que son visibles a un programador, o que tie-
nen impacto en la ejecución lógica de un pro-
grama.
Organización: Detalles de hardware transparen-
tes al programador, tales como señales de con-
trol, interfases entre el computador y los peri-
féricos y la tecnología de memoria usada.

1.1.1 Modelos de arquitectura de

computo clásicas

Arquitectura Mauchly-Eckert (VonNewman)

Concepto de programa almacenado

Bus principal

Procesador
Unidad de
Control

ALU

Registros

Memoria Principal

los datos

Almacena

el programa y

Entrada y salida

Arquitectura Harvard

Espacios de memoria de datos y programa separa-
dos

Bus de
programa

Memoria de
programa

Procesador
Unidad de
Control

ALU

Registros

Bus de
datos

Memoria de datos

Entrada y salida

1.1.2 Arquitecturas segmenta-

das

Las arquitecturas segmentadas aparecieron a me-
diados de los años 1960's como una manera de au-
mentar el rendimiento sin implicar un nivel masivo
de paralelismo
Durante los años 1980's fueron una de las ideas cen-
trales 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 proce-
sador a cada una de las partes del ciclo de instruc-
ció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
Búsqueda

Cola de Instrucciones

Unidad de
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, ade-
má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

Clasificación de Flynn

SISO – (Single Instruction, Single Operand ) com-
putadoras de un solo núcleo
SIMO – (Single Instruction, Multiple Operand )
procesadores vectoriales; extensiones MMX, SSE;
núcleos de GPU
MISO – (Multiple Instruction, Single Operand ) No
implementado
MIMO – (Multiple Instruction, Multiple Operand )
sistemas SMP, Clusters, GPU

Multiprocesamiento

Procesadores vectoriales – Son computadoras pen-
sadas para aplicar un mismo algoritmo numérico a
una serie de datos matriciales, en especial en la si-
mulación de sistemas físicos complejos
La mayoría de los procesadores modernos incluye
algunas instrucciones de tipo vectorial, tales como
las extensiones MMX, SSE
Procesadores Digitales de Señales (DSP), son pro-
cesadores especializados en el procesamiento de se-
ñales tales como audio, video, radar, sonar, radio,
etc. Cuentan con instrucciones tipo vectorial que los
hace muy aptos para dicha aplicación

Sistemas SMP

Sistemas SMP (Simetric Multi Procesesors) –
Varios procesadores comparten la misma me-
moria principal y periféricos de I/O, Normal-
mente conectados por un bus común

Procesador

Procesador

Procesador

Procesador

BUS Común

Memoria

Clusters

Conjuntos de computadoras independientes conec-
tadas en una red de área local o por un bus de inter-
conexión y que trabajan cooperativamente para re-
solver un problema

Memoria

Memoria

Memoria

Memoria

Procesador

Procesador

Procesador

Procesador

Red de Interconexión

Procesadores Gráficos

(Graphics Processing Unit GPU) – sistemas di-
señados originalmente para el procesamiento
de Gráficos, con múltiples procesadores vecto-
riales sencillos compartiendo la misma memo-
ria

CPU

PCI-E

GPU

Núcleo

Núcleo

Núcleo

Núcleo

Núcleo

Núcleo

Anfitrión

DRAM

DRAM

Tarjeta
Gráfica

1.2-Análisis de los componen-

1.2.1 – CPU 1.2.1.1- arquitecturas

tes

CISC (Complex Instruction Set Computers) Tienen un
número amplio de instrucciones y modos de direcciona-
miento. Se implementan instrucciones especiales que rea-
lizan funciones complejas. El número de registros del
CPU es limitado
RISC (Reduced Instruction Set Computers) Solo se cuen-
ta con unas pocas instrucciones y modos de direcciona-
miento, pero se busca implementarlos de forma muy efi-
ciente 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 exte-
rior (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 compu-
tadora imaginaria, cuyo funcionamiento básico
es similar al de la mayoría de las computadoras
de propósito general (De: Mano, M. Morris.
Arquitectura de computadoras. Pearson 1994)
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á alma-
cenar 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 resul-
tado 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 es-
cribir.
MBR – (Memory Bus Register 16 bits) Regis-
tro 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 si-
guiente 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
Operación

Instrucción

Operación

0h
1h
2h
3h
4h
5h
6h
7h
8h
9h

LOAD (Carga)
STORE (Almacena)
ADD (Suma)
ADC (Suma con Acarreo)
SUB (Resta)
OR (Or Bit a Bit)
AND (And bit a Bit)
XOR (Xor Bit a Bit)
SHL (Corrimiento a la Izquierda) ACC<-ACC << 1
SHR (Corrimiento a la derecha) ACC<-ACC >> 1

ACC<-[M]
[M]<-ACC
ACC<-ACC+[M]
ACC<-ACC+[M]+C
ACC<-ACC-[M]
ACC<-ACC or [M]
ACC<-ACC and [M]
ACC<-ACC xor [M]

Códigos de operación (2)

Código de
Operación

Ah
Bh
Ch
Dh
Eh

Fh

Instrucción

Operación

BRA Bifurcación o salto
BRZ (Bifurca si es Cero)
BRC (Bifurca si hay Acarreo)
BRO (Bifurca si hay Sobreflujo)
LDI (Carga Constante
Inmediata)
STOP

PC<-M
Si Z==1 => PC<-M
Si C==1 => PC<-M
Si O==1 => PC<-M
ACC <-[PC]
PC<-PC+1
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
LD 123h
ADD 123h
BRA 123h
LDI 1234h
STOP

0h
2h
Ah
E000h
Fh

Operando
123h
123h
123h
1234h
No Aplica

Código
0123h
2123h
A123h
E000h, 1234h
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 instruc-
ció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 Op-
code

Búsqueda Instrucción

LOAD 023h

R
A
M

R
B
M

BUS

Banderas

Acumulador

PC

IR

CPU

Contenido
XXXXh
XXXXh
0023h
2024h

XXXXh
1234h
4567h

...

...

Dir.
000h
001h
002h
003h

022h
023h
024h

XXXXh

FFFh

Memoria

Búsqueda Instrucción

LOAD 023h

h
R
2
A
0
M
0

h
R
3
B
2
M
0
0

BUS

Banderas

Acumulador

PC
002h

0023h

IR

CPU

Contenido
XXXXh
XXXXh
0023h
2024h

XXXXh
1234h
4567h

...

...

Dir.
000h
001h
002h
003h

022h
023h
024h

XXXXh

FFFh

Memoria

Búsqueda Instrucción

LOAD 023h

h
R
2
A
0
M
0

h
R
3
B
2
M
0
0

BUS

Banderas

Acumulador

PC
002h
003h

0023h

IR

CPU

Contenido
XXXXh
XXXXh
0023h
2024h

XXXXh
1234h
4567h

...

...

Dir.
000h
001h
002h
  • Links de descarga
http://lwp-l.com/pdf13337

Comentarios de: Unidad 1a - Arquitectura de Computadoras (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad