Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
ARQUITECTURA DE
COMPUTADORES
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Contenido
UNIDAD I: NIVEL DE LGICA DIGITAL..............................................................2
Algebra de Boole...............................................................................................2
Compuertas y Algebra de Boole, Funciones Booleanas...............................4
Circuitos.............................................................................................................5
Arquitectura de Computadores
Multiplexores..................................................................................................5
Arquitectura de Computadores
Registros........................................................................................................5
Simulacin de Circuitos.....................................................................................5
Uso y manejo de la herramienta de simulacin ISIS Proteus.......................5
UNIDAD III: REPRESENTACIN DE DATOS.....................................................5
Sistemas de numeracin...................................................................................5
Arquitectura de Computadores
Arquitectura de Computadores
Ensamblaje de Computadoras..........................................................................6
10
Arquitectura de Computadores
11
Arquitectura de Computadores
12
Arquitectura de Computadores
Introduccin a virtualizacin..............................................................................6
Modelos..........................................................................................................6
Hipervisor.......................................................................................................6
Rendimiento / Disponibilidad.........................................................................6
13
Arquitectura de Computadores
14
Arquitectura de Computadores
Objetivo de la Asignatura
15
Arquitectura de Computadores
16
Arquitectura de Computadores
Esta asignatura est orientada al estudio de las compuertas lgicas, que son de gran
utilidad en el diseo de los circuitos lgicos. En el estudio de las compuertas lgicas ser
analizada su operacin lgica mediante el lgebra booleana.
Tambin veremos cmo se combinan las compuertas lgicas para producir circuitos
17
Arquitectura de Computadores
El lgebra booleana se utiliza para expresar los efectos que los diversos circuitos digitales
ejercen sobre las entradas lgicas y para manipular variables lgicas con objeto de
determinar el mejor mtodo de ejecucin de cierta funcin de un circuito.
Ya que solo puede haber dos valores, el lgebra booleana es muy sencilla de entender y
manejar. De hecho en el lgebra booleana solo existen tres operaciones bsicas: OR,
AND Y NOT.
18
Arquitectura de Computadores
Usaremos el lgebra booleana primero para describir y analizar estas compuertas lgicas
bsicas y ms tarde para analizar combinaciones de compuertas lgicas conectadas
19
Arquitectura de Computadores
20
Arquitectura de Computadores
21
Arquitectura de Computadores
22
Arquitectura de Computadores
23
Arquitectura de Computadores
24
Arquitectura de Computadores
25
Arquitectura de Computadores
UNIDAD I:
26
Arquitectura de Computadores
NIVEL DE LGICA
DIGITAL
27
Arquitectura de Computadores
28
Arquitectura de Computadores
29
Arquitectura de Computadores
como inversor).
30
Arquitectura de Computadores
31
Arquitectura de Computadores
32
Arquitectura de Computadores
33
Arquitectura de Computadores
34
Arquitectura de Computadores
Aunque desarrollada por Boole para el estudio de la lgica, fue a partir de 1938 fecha en
la cual Claude E. Shannon estableci los primeros conceptos de la teora de conmutacin,
cuando se ha aumentado la aplicacin del lgebra de Boole a los computadores digitales.
Hoy da, el anlisis y la sntesis de combinaciones complejas de circuitos lgicos, algo
imprescindible para el desarrollo de los computadores, se puede realizar con rapidez y
35
Arquitectura de Computadores
Algebra de Boole
Introduccin
36
Arquitectura de Computadores
37
Arquitectura de Computadores
B, +, *, , 0, 1
Se denomina lgebra de Boole si se cumplen los siguientes axiomas para cualesquiera
Anlisis - Arquitectura de Computadores
38
Arquitectura de Computadores
[B1] Conmutatividad:
(1a) a + b = b + a
(1b) a * b = b * a
[B2] Distributividad:
(2a) a + (b * c) = (a + b) * (a + c)
(2b) a * (b + c) = (a * b) + (a * c)
[B3] Identidad:
39
Arquitectura de Computadores
(3a) a + 0 = a
(3b) a * 1 = a
[B4] Complemento:
(4a) a + a = 1
(4b) a * a = 0
Terminologa y convenciones
40
Arquitectura de Computadores
La operacin
se denomina complemento de a.
(2a) a + bc = (a + b) (a + c)
41
Arquitectura de Computadores
significa a * ( b ) y no ( ab )
Dualidad
42
Arquitectura de Computadores
es
(0 * a) + (b * 1) = b
Boole, los axiomas del grupo (1) son duales de los axiomas del grupo (2) y viceversa. En
43
Arquitectura de Computadores
44
Arquitectura de Computadores
estos axiomas ya que se puede probar usando el dual en cada paso de la demostracin
original.
Teoremas bsicos
Utilizando los axiomas de la definicin de un lgebra de Boole, pueden demostrarse los
siguientes teoremas:
45
Arquitectura de Computadores
(5b) a * a = a
(ii) Acotamiento:
(6a) a + 1 = 1
(6b) a * 0 = 0
(iii) Absorcin:
(7b) a * (a + b) = a
(7a) a + (a * b) = a
46
Arquitectura de Computadores
(iv) Asociatividad:
(8a) (a + b) + c = a + (b + c)
(8b) (a * b) * c = a * (b * c)
(ii) Involucin:
a * x = 0, entonces x =
47
Arquitectura de Computadores
=a
(iii) (9a) 0
(9b) 1
=1
=0
* b
(10b) ab = a
(10a) a+b = a
48
Arquitectura de Computadores
49
Arquitectura de Computadores
(2b) a * (b + c) = (a * b) + (a * c)
ppp
(5a) a + a = a
p (p q) p
(7a) a + (a * b) = a
+
(p q) p q
(10b) ab = a
p (q r) (p q) (p r)
50
Arquitectura de Computadores
de
lgebra de Boole es una estructura algebraica que relaciona las operaciones lgicas O,
51
Arquitectura de Computadores
52
Arquitectura de Computadores
Sabas que?
53
Arquitectura de Computadores
54
Arquitectura de Computadores
55
Arquitectura de Computadores
Funcin lgica
Se denomina funcin lgica a toda expresin algebraica formada por variables binarias
que se relacionan mediante las operaciones bsicas del lgebra de Boole. Una funcin
Anlisis - Arquitectura de Computadores
56
Arquitectura de Computadores
57
Arquitectura de Computadores
de las posibles combinaciones de las variables de entrada. Es un cuadro formado por tantas columnas co
58
Arquitectura de Computadores
59
Arquitectura de Computadores
n
etc.
Caso prctico: Construccin de una tabla de verdad a partir de una funcin lgica.
Dada la funcin lgica: F = a + b, hemos de construir la tabla de verdad:
Anlisis - Arquitectura de Computadores
Solucin:
60
Arquitectura de Computadores
61
22 = 4
Arquitectura de Computadores
62
Arquitectura de Computadores
63
Arquitectura de Computadores
cas son pequeos circuitos digitales integrados cuyo funcionamiento se adapta a las operaciones y postulados
64
Arquitectura de Computadores
65
Arquitectura de Computadores
66
Arquitectura de Computadores
Circuitos
Introduccin
Un circuito lgico es un dispositivo que tienen una o ms entradas y exactamente una
salida. En cada instante cada entrada tiene un valor, 0 o 1; estos datos son procesados
67
Arquitectura de Computadores
68
Arquitectura de Computadores
Los valores 0 y 1 pueden representar ciertas situaciones fsicas como, por ejemplo, un
69
Arquitectura de Computadores
Compuerta AND
70
Arquitectura de Computadores
Y = AB
71
Arquitectura de Computadores
72
Arquitectura de Computadores
Compuerta OR
73
Arquitectura de Computadores
74
Arquitectura de Computadores
75
Arquitectura de Computadores
76
Arquitectura de Computadores
77
Arquitectura de Computadores
Y=
78
Arquitectura de Computadores
79
Arquitectura de Computadores
80
Arquitectura de Computadores
Por lo tanto, cuando las entradas son A y B, las salidas de estas compuertas resultan:
81
Arquitectura de Computadores
NAND: Y =
B
A+
NOR: Y =
AB
82
Arquitectura de Computadores
83
Arquitectura de Computadores
84
Arquitectura de Computadores
Por ejemplo:
85
Arquitectura de Computadores
86
Arquitectura de Computadores
Es fcil notar que las tablas correspondientes a las compuertas OR, AND y NOT son
respectivamente idnticas a las tablas de verdad de la disyuncin, la conjuncin y la
negacin en la lgica de enunciados, donde slo se ha cambiado V y F por 0 y 1. Por lo
tanto, los circuitos lgicos, de los cuales tales compuertas son elementos, forman un
87
Arquitectura de Computadores
Adoptaremos, entonces, aqu las mismas convenciones adoptadas en el caso del lgebra
de Boole:
Omitimos el smbolo *, usndose en su lugar la yuxtaposicin de variables.
88
Arquitectura de Computadores
( A + B )* C
89
Arquitectura de Computadores
90
Arquitectura de Computadores
91
Arquitectura de Computadores
Adems de almacenar bits los registros se pueden emplear para desplazar los bits de
92
Arquitectura de Computadores
una posicin a otra dentro del propio registro o fuera del mismo. Estos dispositivos reciben
el nombre de registros de desplazamiento y los veremos en secciones posteriores. Los
circuitos secuenciales se pueden dividir en sncronos y asncronos.
1. Sncronos: las entradas, salidas y los estados internos se muestrean en instantes de
93
Arquitectura de Computadores
2. Asncronos: los circuitos responden a cambios en las entradas que se pueden producir
en cualquier momento.
RELACIONES DE EQUIVALENCIAS
Para reducir una Tabla de Estados y conseguir una tabla ptima en estados con la
menor cantidad de estados, es necesario determinar a partir de la tabla inicial de estados,
Anlisis - Arquitectura de Computadores
los estados que resulten ser equivalentes. Esto significa que algunos estados pueden
94
Arquitectura de Computadores
95
Arquitectura de Computadores
FLIP-FLOPS RS
Este es el flip - flop bsico, su smbolo es el siguiente:
96
Arquitectura de Computadores
El flip-flop tiene dos entradas R (reset) y S (set), se encuentran a la izquierda del smbolo.
Este flip-flop tiene activas las entradas en el nivel BAJO, lo cual se indica por los circulitos
de las entradas R y S. Los flip-flop tienen dos salidas complementarias, que se
denominan Q y 1, la salida Q es la salida normal y 1 = 0.
El flip-flop RS se puede construir a partir de puertas lgicas. A continuacin mostraremos
un flip-flop construido a partir de dos puertas NAND, y al lado veremos su tabla de verdad
Anlisis - Arquitectura de Computadores
correspondiente.
97
Arquitectura de Computadores
98
Arquitectura de Computadores
99
Arquitectura de Computadores
Entradas
Salidas
Modo de operacin
Prohibido
Set
Reset
Mantenimiento
No cambia
100
Arquitectura de Computadores
101
Arquitectura de Computadores
Luego encontramos la condicin "set" del flip-flop. Aqu un nivel BAJO, o cero lgico,
activa la entrada de set(S). Esta pone la salida normal Q al nivel alto, o 1. Seguidamente
encontramos la condicin "reset". El nivel BAJO, o 0, activa la entrada de reset, borrando
(o poniendo en reset) la salida normal Q.
La cuarta lnea muestra la condicin de "inhabilitacin" o "mantenimiento", del flip-flop RS.
Las salidas permanecen como estaban antes de que existiese esta condicin, es decir, no
102
Arquitectura de Computadores
hay cambio en las salidas de sus estados anteriores. Indicar la salida de set, significa
poner la salida Q a 1, de igual forma, la condicin reset pone la salida Q a 0.
La salida complementaria nos muestra lo opuesto. Estos flip-flop se pueden conseguir a
travs de circuitos integrados.
FLIP-FLOPS RS SINCRONO
103
Arquitectura de Computadores
104
Arquitectura de Computadores
105
Arquitectura de Computadores
sincronismo al cerrojo RS. La tabla de la verdad nos muestra la operacin del flip-flop RS
sncrono.
El modo de mantenimiento se describe en la primera lnea de la tabla de la verdad.
Cuando un pulso de reloj llega a la entrada CLK (con 0 en las entradas R y S), las salidas
no cambian, permanecen igual que antes de la llegada del pulso de reloj. Este modo
106
Arquitectura de Computadores
107
Arquitectura de Computadores
108
Arquitectura de Computadores
Modo
operacin
de ENTRADAS
S
Mantenimiento
No cambia
Reset
Set
0
1
1
0
1
1
CLK
SALIDAS
109
1
0
Arquitectura de Computadores
Prohibido
110
Arquitectura de Computadores
Las 3 lneas superiores representan las seales binarias de reloj, set y reset. Una sola
salida Q se muestra en la parte inferior. Comenzando por la izquierda, llega el pulso de
reloj 1, pero no tiene efecto en Q porque las entradas R y S estn en el modo de
mantenimiento, por tanto, la salida Q permanece a 0.
En el punto a del diagrama del tiempo, la entrada de set se activa en el nivel ALTO.
Despus de cierto tiempo en el punto b, la salida se pone a 1. Mirar que el flip-flop ha
Anlisis - Arquitectura de Computadores
esperado a que el pulso 2 pase del nivel BAJO a ALTO antes de activar la salida Q a 1. El
111
Arquitectura de Computadores
pulso est presente cuando las entradas R y S estn en modo de mantenimiento, y por lo
tanto la salida no cambia. En el punto C la entrada de reset se activa con un nivel ALTO.
Un instante posterior en el punto d la salida Q se borra se pone a 0, lo cual ocurre
durante la transicin del nivel BAJO a ALTO del pulso del reloj. En el punto e est activada
la entrada de set, por ello se pone a 1 la salida Q en el punto f del diagrama de tiempos.
La entrada S se desactiva y la R se activa antes del pulso 6, lo cual hace que la salida Q
Anlisis - Arquitectura de Computadores
112
Arquitectura de Computadores
El pulso 7 muestra que la salida Q sigue a las entradas R Y S todo el tiempo que el reloj
est en ALTA. En el punto g del diagrama de tiempos, la entrada de set (S) va a nivel
ALTO y la salida Q alcanza tambin el nivel ALTO. Despus la entrada S va a nivel BAJO.
A continuacin en el punto h, la entrada de reset (R) se activa por un nivel ALTO. Eso
hace que la salida Q vaya al estado de reset, o nivel BAJO.
La entrada R entonces vuelve al nivel BAJO, y finalmente el pulso de reloj finaliza con la
Anlisis - Arquitectura de Computadores
transicin del nivel ALTO al BAJO. Durante el pulso de reloj 7, la salida estuvo en el nivel
113
Arquitectura de Computadores
ALTO y despus en el BAJO. Observar que entre los pulsos 5 y 6 ambas entradas R y S
estn a 1. La condicin de ambas entradas R y S en el nivel ALTO, normalmente, se
considera un estado prohibido para el flip-flop. En este caso es aceptable que R y S estn
en el nivel ALTO, porque el pulso de reloj est en el nivel BAJO y el flip-flop no est
activado.
114
Arquitectura de Computadores
115
Arquitectura de Computadores
116
Arquitectura de Computadores
117
Arquitectura de Computadores
118
Arquitectura de Computadores
119
Arquitectura de Computadores
120
Arquitectura de Computadores
121
Arquitectura de Computadores
UNIDAD II:
122
Arquitectura de Computadores
COMPONENTES
DIGITALES
123
Arquitectura de Computadores
124
Arquitectura de Computadores
125
Arquitectura de Computadores
126
Arquitectura de Computadores
Una
de
las
metas
de
los
fabricantes
de
puertas
(Tabla
1.4),
son
127
las
cuales
se
Arquitectura de Computadores
128
Arquitectura de Computadores
A su vez, cada tipo de puerta tiene su integrado del tipo 74xx, donde 74 (tecnologa
129
Arquitectura de Computadores
tabla:
130
Arquitectura de Computadores
131
Arquitectura de Computadores
132
Arquitectura de Computadores
133
Arquitectura de Computadores
134
Arquitectura de Computadores
Los circuitos integrados con puertas lgicas tienen 14 patillas, siendo la numeracin como
sigue (empezando por la patilla 1 con el semicrculo a nuestra izquierda):
135
Arquitectura de Computadores
136
Arquitectura de Computadores
Circuitos bsicos
Es tan comn la aplicacin del circuito elctrico en nuestros das que tal vez no le damos
137
Arquitectura de Computadores
computadoras y videocaseteras, entre muchos y otros son aparatos que requieren para su
funcionamiento, de circuitos elctricos simples, combinados y complejos.
Pero qu es un circuito elctrico? Se denomina as el camino que recorre una
corriente elctrica. Este recorrido se inicia en una de las terminales de una pila, pasa a
travs de un conducto elctrico (cable de cobre), llega a una resistencia (foco), que
138
Arquitectura de Computadores
139
Arquitectura de Computadores
Todo circuito elctrico requiere, para su funcionamiento, de una fuente de energa, en este
caso, de una corriente elctrica.
Qu es la corriente elctrica? Recibe este nombre el movimiento de cargas elctricas
(electrones) a travs de un conducto; es decir, que la corriente elctrica es un flujo de
electrones.
140
Arquitectura de Computadores
141
Arquitectura de Computadores
142
Arquitectura de Computadores
Recuerda
que
cada
circuito
presenta
Caractersticas
Particulares.
Obsrvalas,
143
Arquitectura de Computadores
Circuito en serie
144
Arquitectura de Computadores
145
Arquitectura de Computadores
Circuito en paralelo
146
Arquitectura de Computadores
147
Arquitectura de Computadores
148
Arquitectura de Computadores
149
Arquitectura de Computadores
150
Arquitectura de Computadores
151
Arquitectura de Computadores
152
Arquitectura de Computadores
153
Arquitectura de Computadores
154
Arquitectura de Computadores
UNIDAD III:
155
Arquitectura de Computadores
REPRESENTACIN
DATOS
156
DE
Arquitectura de Computadores
157
Arquitectura de Computadores
158
Arquitectura de Computadores
MICROOPERACIN:
159
Arquitectura de Computadores
160
Arquitectura de Computadores
operaciones consideran cada bit de registro en forma separada y los tratan como
161
Arquitectura de Computadores
variables binarias.se adoptaran smbolos especiales para las microoperaciones lgicas or,
162
Arquitectura de Computadores
163
Arquitectura de Computadores
164
Arquitectura de Computadores
165
Arquitectura de Computadores
166
Arquitectura de Computadores
167
Arquitectura de Computadores
Para pasar del un Sistema Binario al Sistema Octal se utiliza el siguiente mtodo:
168
Arquitectura de Computadores
169
Arquitectura de Computadores
170
Arquitectura de Computadores
171
Arquitectura de Computadores
Tres posiciones. 8 a la 2, 8 a la 1, 8 a la 0.
172
Arquitectura de Computadores
173
Arquitectura de Computadores
174
Arquitectura de Computadores
175
Arquitectura de Computadores
176
Arquitectura de Computadores
177
Arquitectura de Computadores
178
Arquitectura de Computadores
Convertir un nmero Binario que tiene sus tros completos, 101110001 al Sistema Octal
sera:
Se agrupan los bits en tros (101110001) = 101 - 110 - 001
Se convierte el Primer tro (donde se encuentra el LSB) 001 = 1
179
Arquitectura de Computadores
como hexadecimales.
180
Arquitectura de Computadores
OPERACIN LGICA
Una operacin lgica asigna un valor (CIERTO o FALSO) a la combinacin de
condiciones (CIERTO o FALSO) de uno o ms factores. Los factores que intervienen en
una operacin lgica slo pueden ser ciertos o falsos. Y el resultado de una operacin
Anlisis - Arquitectura de Computadores
181
Arquitectura de Computadores
Los resultados de una operacin lgica, para cada uno de los valores posibles de las
variables, se fijan en una tabla denominada Tabla de Verdad:
1.
pq
182
Arquitectura de Computadores
F
F
F
2. Conjuncin. Dos proposiciones simples p y q relacionadas por el conectivo lgico "y"
conforman la proposicin compuesta llamada conjuncin, la cual se simboliza as: p
q.
183
Arquitectura de Computadores
pq
V
V
V
184
Arquitectura de Computadores
185
Arquitectura de Computadores
~p
F
V
4. Negacin. Dada una proposicin simple p, esta puede ser negada y convertirse en
186
Arquitectura de Computadores
pq
V
F
V
187
Arquitectura de Computadores
simboliza as: p q.
188
Arquitectura de Computadores
pq
V
F
F
189
Arquitectura de Computadores
EJEMPLO:
p: Abigail Alcalde Flores gana la partida de damas.
q: Abigail Alcalde Flores recibe el premio.
190
Arquitectura de Computadores
"Si Abigail Alcalde Flores gana la partida entonces recibe el premio", la cual se representa
simblicamente as: p q.
Expresiones como: ~ p ~ q
(p q) ~ q
~ (p q) (~ p q)
191
Arquitectura de Computadores
OPERACIONES ARITMTICAS
Suma
La operacin suma consiste en obtener el nmero total de elementos a partir dos o ms
cantidades.
a+b=c
192
Arquitectura de Computadores
(a + b) + c = a + (b + c)
193
Arquitectura de Computadores
2.
Conmutativa:
3. Elemento neutro:
194
Arquitectura de Computadores
195
Arquitectura de Computadores
aa=0
El opuesto del opuesto de un nmero es igual al mismo nmero.
La suma de nmeros naturales no cumple esta propiedad.
Resta
196
Arquitectura de Computadores
a-
b=c
1. No es Conmutativa:
197
Arquitectura de Computadores
Multiplicacin
Multiplicar dos nmeros consiste en sumar uno de los factores consigo mismo tantas
veces como indica el otro factor.
ab=c
198
Arquitectura de Computadores
Propiedades de la multiplicacin
1. Asociativa:
El modo de agrupar los factores no vara el resultado
(a b) c = a (b c)
2. Conmutativa:
199
Arquitectura de Computadores
el mismo nmero.
200
Arquitectura de Computadores
a1=a
4. Elemento inverso:
Un nmero es inverso del otro si al multiplicarlos obtenemos como resultado el elemento
unidad.
201
Arquitectura de Computadores
1
a . =1
a
La suma de nmeros naturales y de enteros no cumple esta propiedad.
5. Distributiva:
202
Arquitectura de Computadores
El producto de un nmero por una suma es igual a la suma de los productos de dicho
nmero por cada uno de los sumandos.
a (b + c) = a b + a c
6. Sacar factor comn:
203
Arquitectura de Computadores
a b + a c = a (b + c)
Divisin
La divisin o cociente es una operacin aritmtica que consiste en averiguar cuntas
204
Arquitectura de Computadores
D:d=c
Los trminos que intervienen en un cociente se llaman, D, dividendo y d divisor. Al
resultado, c, lo llamamos cociente.
Tipos de divisiones
1. Divisin exacta:
205
Arquitectura de Computadores
D=dc+r
206
Arquitectura de Computadores
Propiedades de la divisin
1. No es Conmutativo:
a:bb:a
2. Cero dividido entre cualquier nmero da cero.
0:a=0
207
Arquitectura de Computadores
Base
208
Arquitectura de Computadores
1. a0 = 1
209
Arquitectura de Computadores
2. a1 = a
3. Producto de potencias con la misma base:
Es otra potencia con la misma base y cuyo exponente es la suma de los exponentes.
am a n = am+n
210
Arquitectura de Computadores
Es otra potencia con la misma base y cuyo exponente es la diferencia de los exponentes.
am : a n = am - n
25 : 22 = 25 - 2 = 23
5. Potencia de una potencia:
Es otra potencia con la misma base y cuyo exponente es el producto de los exponentes.
211
Arquitectura de Computadores
(am)n = am n
6. Producto de potencias con el mismo exponente:
Es otra potencia con el mismo exponente y cuya base es el producto de las bases.
an b n = (a b) n
212
Arquitectura de Computadores
Es otra potencia con el mismo exponente y cuya base es el cociente de las bases.
an : bn = (a : b)n
Radicacin
213
Arquitectura de Computadores
214
Arquitectura de Computadores
215
Arquitectura de Computadores
Logaritmacin
216
Arquitectura de Computadores
OPERACIONES DE DESPLAZAMIENTO
217
Arquitectura de Computadores
Los
operadores
de
desplazamiento
tambin
manipulan
bits.
El
operador
de
218
Arquitectura de Computadores
219
Arquitectura de Computadores
Operador
Utilizacin
A << B
>>
A >> B
>>>
A >>> B
<<
Resultado
220
Arquitectura de Computadores
int j = 33;
221
Arquitectura de Computadores
int k = j << 2;
Este es el resultado:
00000000000000000000000000100001 : j = 33
222
Arquitectura de Computadores
Cada "hueco" que queda a la derecha tras correr este nmero se rellena con los dgitos
que van saliendo por la izquierda (ceros en este caso). Si prestamos atencin,
observaremos que esta operacin multiplic a j por 2 tantas veces como posiciones se ha
desplazado. En este caso se multiplic por 4 ( 2 x 2 ). Como el signo del nmero puede
cambiar tras la operacin, se denomina desplazamiento con signo.
223
Arquitectura de Computadores
Volvamos a colocar como estaban los bits del caso anterior. Queremos obtener
nuevamente el nmero 33. Para esto desplazamos el nmero 132 dos posiciones a la
derecha.
int k = 132;
int m = k >> 2;
224
Arquitectura de Computadores
225
Arquitectura de Computadores
Podemos ver que el corrimiento a la derecha realiza una divisin de enteros. Divide por 2,
tantas veces como posiciones desplazadas. Los huecos que quedan por la izquierda se
cubren con los bits que van saliendo por la derecha (es cclico).
Veamos qu ocurre si pretendemos realizar un desplazamiento a la derecha con un
226
Arquitectura de Computadores
complemento a 2. Si tengo una variable de tipo int con el valor 1 , internamente est
almacenada de la siguiente forma :
11111111111111111111111111111111 : -1 complemento a 2
Ahora realicemos un programa para ver qu ocurre con el desplazamiento.
227
Arquitectura de Computadores
228
Arquitectura de Computadores
"huecos" que quedan a la izquierda se rellenan con el bit uno (1), quedando inalterable.
229
Arquitectura de Computadores
Este operador desplaza el conjunto de bit a la derecha y agrega a la izquierda los bits que
faltan segn el signo. Si se encuentra con un nmero positivo, agrega ceros, en cambio si
son negativos agrega unos. Se lo conoce como desplazamiento con signo.
Desplazamiento a la derecha sin signo
Modifiquemos ligeramente el programa anterior agregndole al operador un smbolo >.
Anlisis - Arquitectura de Computadores
230
Arquitectura de Computadores
int x = -1;
int y = x >>> 2;
Si ejecutamos el programa nos dice lo siguiente :
El resultado es: 1073741823
231
Arquitectura de Computadores
232
Arquitectura de Computadores
233
Arquitectura de Computadores
234
Arquitectura de Computadores
235
Arquitectura de Computadores
236
Arquitectura de Computadores
237
Arquitectura de Computadores
238
Arquitectura de Computadores
UNIDAD IV:
ORGANIZACIN BSICA
239
Arquitectura de Computadores
240
Arquitectura de Computadores
REGISTROS DE COMPUTADORA
241
Arquitectura de Computadores
242
Arquitectura de Computadores
un operando. Esto deja tres bits para la parte de operacin de la instruccin y un bit para
243
Arquitectura de Computadores
INSTRUCCIONES DE COMPUTADORA
244
Arquitectura de Computadores
245
Arquitectura de Computadores
registro especifica una operacin o una prueba del registro AC. No se necesita un
operando de la memoria, por lo tanto los otros 12 bits se utilizan para especificar la
operacin o prueba que se va a ejecutar. De igual forma, una instruccin de entradasalida no necesita una referencia a memoria y se reconoce por el cdigo de operacin 111
con 1 en el bit de la extrema izquierda de la instruccin. Los 12 bits restantes se utilizan
246
Arquitectura de Computadores
referencia es del tipo de entrada-salida. Ntese que el bit de la posicin 15 del cdigo de
247
Arquitectura de Computadores
restantes como parte del cdigo de operacin, la cantidad total de instrucciones puede
248
Arquitectura de Computadores
249
Arquitectura de Computadores
250
Arquitectura de Computadores
251
Arquitectura de Computadores
252
Arquitectura de Computadores
puede incluir algn ciclo de memoria adicional para leer operandos o escribir el resultado.
253
Arquitectura de Computadores
Todos los ciclos de reloj son iguales, los ciclos de memoria son distintos (lecturas y
escrituras), los ciclos de instruccin son distintos, las instrucciones ocupan ciclos
completos de memoria ms algn ciclo de reloj.
TIPOS DE CICLOS:
Ciclo de bsqueda
Ciclo de fetch.
254
Arquitectura de Computadores
Ciclo indirecto.
Ciclo de ejecucin.
CICLO DE BUSQUEDA
255
Arquitectura de Computadores
siguienteinstruccin).
256
Arquitectura de Computadores
lainstruccin.
257
Arquitectura de Computadores
258
Arquitectura de Computadores
Todas las instrucciones que requieran la bsqueda de un dato a memoria para realizar
una operacin lgica o matemtica, o realizar una transferencia de datos hacia o desde la
memoria, requieren un segundo ciclo de memoria llamado ciclo de ejecucin.
Ejemplo:
Por ejemplo, para sumar los nmeros 5 y 6 y mostrar el resultado en la pantalla, se
Anlisis - Arquitectura de Computadores
259
Arquitectura de Computadores
Busque la instruccin
Busque nmero en la direccin 123456 (que resulta ser 5).
Decodifique la instruccin
Ejecute:
260
Arquitectura de Computadores
261
Arquitectura de Computadores
Busque la instruccin
Sume sos dos nmeros.
Decodifique la instruccin
Ejecute:
262
Arquitectura de Computadores
Almacene:
El resultado es almacenado en un lugar por el momento.
Busque la instruccin:
Muestre el resultado en la pantalla.
Decodifique la instruccin
263
Arquitectura de Computadores
Ejecute:
Muestre el resultado en la pantalla.
La enorme velocidad de la computadora le permite ejecutar millones de stos pasos en
un segundo.
264
Arquitectura de Computadores
265
Arquitectura de Computadores
CICLO DE FETCH
266
Arquitectura de Computadores
267
Arquitectura de Computadores
268
Arquitectura de Computadores
CICLO INDIRECTO
Direccionamiento directo: un acceso a memoria poroperando.
Direccionamiento Indirecto requiere ms accesos a memoria
Se puede tomar como un subciclo de instruccin adicional
Microoperaciones:
269
Arquitectura de Computadores
270
Arquitectura de Computadores
271
Arquitectura de Computadores
CICLO DE EJECUCION
Puede ser muy variable
Depende de la instruccin a ejecutar
Puede incluir
Lectura/escritura de memoria
272
Arquitectura de Computadores
Entrada/Salida
273
Arquitectura de Computadores
Ejemplo 1
Instruccin: add R1, X
Microinstrucciones
t1: MAR <-- IR(direccion)
t2: READ
274
Arquitectura de Computadores
275
Arquitectura de Computadores
t2: READ
t3: MBR <-- MBR + 1
t4: WRITE
276
Arquitectura de Computadores
DIRECCIONAMIENTO
posterior reutilizacin.
277
Arquitectura de Computadores
Implcito
278
Arquitectura de Computadores
279
Arquitectura de Computadores
direccin. El campo del operando contiene el operando actual que se debe utilizar en
conjunto con la operacin especificada en la instruccin. Las instrucciones de modo
inmediato son tiles para inicializar los registros en un valor constante.
Directo
El campo de operando en la instruccin contiene la direccin en memoria donde se
Anlisis - Arquitectura de Computadores
encuentra el operando.
280
Arquitectura de Computadores
instruccin, tal como los valores de datos inmediatos que son contenidos en la instruccin.
281
Arquitectura de Computadores
Indirecto
282
Arquitectura de Computadores
instruccin.
283
Arquitectura de Computadores
De registro
Sirve para especificar operandos que estn en registros.
Indirecto mediante registros
El campo de operando de la instruccin contiene un identificador de registro en el que se
284
Arquitectura de Computadores
procesador.
285
Arquitectura de Computadores
De desplazamiento
Combina el modo directo e indirecto mediante registros
De pila
286
Arquitectura de Computadores
Este direccionamiento se basa en las estructuras denominadas Pila (tipo LIFO), las cuales
estn marcados por el fondo de la pila y el puntero de pila (*SP), El puntero de pila apunta
a la ltima posicin ocupada. As, como puntero de direccionamiento usaremos el SP. El
desplazamiento ms el valor del SP nos dar la direccin del objeto al que queramos
hacer referencia. En ocasiones, si no existe C. de desplazamiento solo se trabajara con la
cima de la pila. Este tipo de direccionamiento nos aporta flexibilidad pero por el contrario,
Anlisis - Arquitectura de Computadores
287
Arquitectura de Computadores
Address) como la suma del contenido del registro base y un cierto desplazamiento (u
288
Arquitectura de Computadores
offset) que siempre ser positivo. Esta tcnica permite cdigos reentrantes y acceder de
forma fcil y rpida a posiciones cercanas de memoria.
Respecto a un registro ndice
Es similar al anterior, lo nico que es el contenido del registro ndice el que indica el
289
Arquitectura de Computadores
tambin como argumento a la orden que utiliza este modo de direccionamiento. Aunque
en esencia son dos modos equivalentes.
Respecto al contador de programa
Consiste en direccin una posicin de memoria usando como registro base al contador de
programa (PC), el funcionamiento es anlogo al direccionamiento respecto a registro base
Anlisis - Arquitectura de Computadores
con la salvedad de que, en este caso, el offset puede ser tambin negativo.
290
Arquitectura de Computadores
Segmentado
La memoria se divide en porciones cuyos tamaos son variables. As, para acceder a
ellos se tiene una tabla de segmentos que contiene la direccin del comienzo y del final
291
Arquitectura de Computadores
Usar este tipo de direccionamiento tiene como ventajas que se puede definir segmentos
de tamao arbitrario. Por otro lado, esta misma ventaja, el fraccionamiento de memoria es
uno de sus problemas.
Ambos modos de direccionamiento facilitan la multiprogramacin gracias a la tcnica de la
memoria virtual que permite que un proceso no tenga que estar cargado ntegramente en
292
Arquitectura de Computadores
293
Arquitectura de Computadores
294
Arquitectura de Computadores
295
Arquitectura de Computadores
296
Arquitectura de Computadores
297
Arquitectura de Computadores
298
Arquitectura de Computadores
UNIDAD V:
299
Arquitectura de Computadores
EL CPU Y ENSAMBLAJE
DE COMPUTADORAS
300
Arquitectura de Computadores
301
Arquitectura de Computadores
302
Arquitectura de Computadores
303
Arquitectura de Computadores
REGISTRO (HARDWARE)
Un registro es una memoria de alta velocidad y poca capacidad, integrada en
el microprocesador, que permite guardar transitoriamente y acceder a valores muy
usados, generalmente en operaciones matemticas.
Los registros estn en la cumbre de la jerarqua de memoria, y son la manera ms rpida
que tiene el sistema de almacenar datos. Los registros se miden generalmente por el
304
Arquitectura de Computadores
305
Arquitectura de Computadores
306
Arquitectura de Computadores
Registros de puntero
Registro de estado
necesitemos.
307
Arquitectura de Computadores
valores.
308
Arquitectura de Computadores
309
Arquitectura de Computadores
REGISTROS DE SEGMENTO
Se dispone de cuatro registros que sirven para contener las direcciones de otros tantos
segmentos (zonas de 64 KB de memoria). Utilizndolos en conjuncin con otros registros
que sealan las direcciones concretas dentro de estos segmentos (los desplazamientos),
permiten manejar la totalidad de la memoria direccionable (el bus de direcciones es de 20
bits).
310
Arquitectura de Computadores
311
Arquitectura de Computadores
Nota: Puede ocurrir que programas pequeos utilicen el mismo segmento para el cdigo,
312
Arquitectura de Computadores
REGISTROS DE PUNTERO
Son 5 registros destinados a contener direcciones; estas direcciones son desplazamientos
dentro de los segmentos indicados por los registros de segmento
-
313
Arquitectura de Computadores
variables dinmicas.
314
Arquitectura de Computadores
el ndice
fuente
SI ("Sourceindex")
el ndice
destino
315
Arquitectura de Computadores
REGISTRO DE ESTADO
Todos los diseos de CPUs incluyen un registro o un conjunto de registros, conocidos a
menudo como palabra de estado de programa "programa status word", PSW), que
contiene informacin de estado. La PSW contiene tpicamente cdigos de condicin
adems de otra informacin de estado. Entre los campos comunes o indicadores se
316
Arquitectura de Computadores
Bit de
Nombre
Descripcin
estado
317
Arquitectura de Computadores
Acarreo
Paridad
orden superior.
Paridad del resultado de una operacin aritmtica
o lgica. Un 1 indica paridad par y el 0 paridad
Cero
impar.
Puesto a uno cuando el resultado de una
318
Arquitectura de Computadores
Desbordamiento
operacin aritmtica.
Usado para indicar un desbordamiento
Interrupcin
aritmtico.
Usado para habilitar o inhabilitar interrupciones
319
Arquitectura de Computadores
320
Arquitectura de Computadores
El
funcionamiento
de
la
CPU
est
determinado
por
las
instrucciones
que
Transferencia de datos
Aritmticas
321
Arquitectura de Computadores
Lgicas
Conversin
Entrada/Salida
Control del sistema
Control de flujo
Transferencia de Datos.-
322
Arquitectura de Computadores
Aritmticas.-
323
Arquitectura de Computadores
Las operaciones aritmticas bsicas son: suma, resta, multiplicacin y divisin; pero hay
operaciones que requieren un solo operando:
Absolute
Negative
Increment
324
Arquitectura de Computadores
Derement
Lgicas. Se basan en operaciones boleanas.
En este caso se aplican operando bsicos como, AND, OR, XOR, EQUAL.
325
Arquitectura de Computadores
326
Arquitectura de Computadores
Conversin
327
Arquitectura de Computadores
procesador de E/S.
328
Arquitectura de Computadores
Control del Sistema.Llamadas instrucciones privilegiadas, que se ejecutan solo cuando el procesador est en
un estado privilegiado o est ejecutando un programa en una zona privilegiada. Por lo
329
Arquitectura de Computadores
330
Arquitectura de Computadores
331
Arquitectura de Computadores
Conclusiones.-
332
Arquitectura de Computadores
En conclusin aprendimos que los tipos de operaciones, los cuales estn guardados en
los registros de memoria, son accionados por el computador segn el uso que se est
realizando en el ordenador.
333
Arquitectura de Computadores
Todos los CPUs x86 compatibles con la PC son procesadores CISC (Computadora de
Conjunto de Instrucciones Complejas), pero en las Mac nuevas o en alguna que se
hagan dibujos de ingeniera complejos,
probablemente
tengan
un CPU RISC
en
el
modo
nativo;
es
DOS, Windows
334
decir,
sin
la
Arquitectura de Computadores
traduccin de software que disminuya el desempeo. Pero CISC y RISC tambin reflejan
dos filosofas de computacin rivales. El procesamiento de RISC requiere breves
instrucciones de software de la misma longitud, que son fciles de procesar rpidamente y
en tndem por un CPU.
En contraste, un procesador de CISC tiene que procesar instrucciones ms largas de
335
Arquitectura de Computadores
de
microprocesadores.
Hay
quienes
consideran
que
en
breve
los
336
Arquitectura de Computadores
(complex instruction set computer), pero existe el hecho que los microprocesadores CISC
tienen un mercado de software muy difundido, aunque tampoco tendrn ya que establecer
nuevas familias en comparacin con el desarrollo de nuevos proyectos con tecnologa
RISC.
Arquitectura RISC
337
Arquitectura de Computadores
338
Arquitectura de Computadores
339
Arquitectura de Computadores
protagonizan
la
tendencia
actual
de
mquinas
340
construccin
de
Arquitectura de Computadores
son
ejemplos
de
algunos de ellos.
RISC es una filosofa de diseo de CPU para computadora que est a favor de conjuntos
de instrucciones pequeas y simples que toman menor tiempo para ejecutarse. El tipo de
procesador ms comnmente utilizado en equipos de escritorio, el x86, est basado
341
Arquitectura de Computadores
basadas en CISC x86 a instrucciones ms simples basadas en RISC para uso interno
antes de su ejecucin.
La idea fue inspirada por el hecho de que muchas de las caractersticas que eran
incluidas en los diseos tradicionales de CPU para aumentar la velocidad estaban siendo
ignoradas por los programas que eran ejecutados en ellas. Adems, la velocidad del
procesador en relacin con la memoria de la computadora que acceda era cada vez ms
342
Arquitectura de Computadores
Las caractersticas que generalmente son encontradas en los diseos RISC son:
343
Arquitectura de Computadores
existen muchas formas de separar los ficheros de registro de entero y coma flotante).
344
Arquitectura de Computadores
CISC tiene instrucciones para tratar con tipos byte, cadena) no se encuentran en una
mquina RISC.
345
Arquitectura de Computadores
Los diseos RISC tambin prefieren utilizar como caracterstica un modelo de memoria
Harvard, donde los conjuntos de instrucciones y los conjuntos de datos estn
conceptualmente separados; esto significa que el modificar las direcciones donde el
cdigo se encuentra pudiera no tener efecto alguno en las instrucciones ejecutadas por el
procesador (porque la CPU tiene separada la instruccin y el cach de datos, al menos
mientras una instruccin especial de sincronizacin es utilizada). Por otra parte, esto
346
Arquitectura de Computadores
permite que ambos cachs sean accedidos separadamente, lo que puede en algunas
ocasiones mejorar el rendimiento.
Arquitectura CISC
347
Arquitectura de Computadores
CISC (Complex Instruction Set Computer) naci de la mano de Intel, creador en 1971 del
primer
microchip
que
permitira
el
nacimiento
de
la informtica personal.
Ms
concretamente, sera en 1972 cuando aparecera el 8080, primer chip capaz de procesar
8 bits, suficiente para representar nmeros y letras. Con la posibilidad de colocar todos
los circuitos en un solo chip y la capacidad de manejar nmero y letras nacera la cuarta
348
Arquitectura de Computadores
mayora
de
de
alto
rendimiento
actualidad
349
implementan
Arquitectura de Computadores
350
Arquitectura de Computadores
ejecutadas con una serie de microinstrucciones almacenadas en una ROM interna. Para
esto se requieren de varios ciclos de reloj, al menos uno por microinstruccin. Es as
entonces como los chips CISC utilizan comandos que incorporan una gran diversidad de
pequeas instrucciones para realizar una nica operacin.
Cuando el sistema operativo o una aplicacin requieren de una de estas acciones, enva
procesador
el
nombre
del
comando
para
realizarla
junto
al
351
con
el
resto
Arquitectura de Computadores
352
Arquitectura de Computadores
Control Microprogramado
Fcil de implementacin
Uso Eficiente de espacio en el chip
Posibilidad de modificar el conjunto de Instrucciones.
Posibilidad de disear nuevas y poderosas Instrucciones
Posibilidad de simular nuevas arquitecturas
353
Arquitectura de Computadores
PROGRAMAS
FUERON
DESARROLLADOS
EN
ENSAMBLADOR
354
LENGUAJE
Arquitectura de Computadores
eficiente.
355
Arquitectura de Computadores
EJECUTARSE
356
Arquitectura de Computadores
o Antes de que una instruccin pueda ser ejecutada los operadores deben ser
buscados desde diferentes ubicaciones de memoria.
PREDOMINAN LAS INSTRUCCIONES CON 2 OPERADORES
o Los CISC, soportan entre cero, uno o mas operadores
MULTIPLES MODOS DE DIRECCIONAMIENTO
o Alguno de los direccionamiento soportados son el directo de memoria,
357
Arquitectura de Computadores
VENTAJAS
Facilidad de implementacin del conjunto de instrucciones
Compatibilidad hacia adelante y hacia atrs de nuevas CPUs
Facilidad de Programacin
Puede ser menor la complejidad de compilador
358
Arquitectura de Computadores
DESVENTAJAS
359
Arquitectura de Computadores
360
Arquitectura de Computadores
361
Arquitectura de Computadores
362
Arquitectura de Computadores
363
Arquitectura de Computadores
UNIDAD VI:
364
Arquitectura de Computadores
ARQUITECTURAS
PARALELAS
365
Arquitectura de Computadores
ARQUITECTURAS
DE
ALTO RENDIMIENTO
366
Arquitectura de Computadores
367
Arquitectura de Computadores
368
Arquitectura de Computadores
al registro de entrada del siguiente segmento. Se aplica un reloj a todos los registros
369
Arquitectura de Computadores
despus de que se ha transcurrido un tiempo suficiente para ejecutar toda la actividad del
segmento. De esta manera la informacin fluye por la lnea un paso a la vez.
La arquitectura paralela o de lneas paralelas (pipe-line), es una tcnica en la que se
descomponen un proceso secuencial en suboperaciones, y cada subproceso se ejecuta
en un segmento dedicado especial que opera en forma concurrente con los otros
370
Arquitectura de Computadores
371
Arquitectura de Computadores
372
Arquitectura de Computadores
SOLUCIN O RESULTADOS
373
Arquitectura de Computadores
374
Arquitectura de Computadores
375
Arquitectura de Computadores
procesamiento vectorial a travs de una serie de etapas, cada una ejecutando una
funcion particular produciendo un resultado intermedio.
La razn por la cual dichas arquitecturas son clasicadas como MISD es que los
elementos de un vector pueden ser considerados como pertenecientes al mismo
dato, y todas las etapas del cauce representan multiples instrucciones que son
376
Arquitectura de Computadores
377
Arquitectura de Computadores
378
Arquitectura de Computadores
379
Arquitectura de Computadores
380
Arquitectura de Computadores
Instruccin simple: solo una instruccin ejecutada por el CPU durante cualquier
ciclo del reloj.
Datos simples: solo una secuencia de datos es usada comoentrada durante
381
Arquitectura de Computadores
382
Arquitectura de Computadores
SIMD Single Instruccin stream, Mltiple Data stream Flujo de instruccin simple
y ujo de datos mltiple. Esto significa que una nica instruccin es aplicada sobre
diferentes datos al mismo tiempo. En las maquinas de este tipo, varias unidades de
procesado diferentes son invocadas por una nica unidad de control.
Al igual que las MISD, las SIMD soportan procesamiento vectorial (matricial)
asignando cada elemento del vector a una unidad funcional diferente para
383
Arquitectura de Computadores
384
Arquitectura de Computadores
385
Arquitectura de Computadores
de datos diferente
386
Arquitectura de Computadores
ejecuten SIMD
387
Arquitectura de Computadores
388
Arquitectura de Computadores
389
Arquitectura de Computadores
390
Arquitectura de Computadores
comercio electrnico, hasta bases de datos de alto rendimiento, entre otros usos.
391
Arquitectura de Computadores
392
Arquitectura de Computadores
393
Arquitectura de Computadores
Qu es un clster?
Los Clster en computacin son una coleccin de computadoras interconectadas de
alguna manera, que trabajan en conjunto, distribuyndose las tareas entre ellas, logrando
394
Arquitectura de Computadores
395
Arquitectura de Computadores
Requerimientos Bsicos
Un clster consta de por lo menos 2 o ms nodos
Los nodos de un clster estn conectados entre s por al menos un canal de
comunicacin
396
Arquitectura de Computadores
Homogeneidad de un cluster
Homogneos: formados por equipos de la misma arquitectura. Todos los nodos tienen
una arquitectura y recursos similares, de manera que no existen muchas diferencias entre
cada nodo.
397
Arquitectura de Computadores
Heterogneos: formados por nodos con distinciones que pueden estar en los siguientes
puntos. Tiempos de acceso distintos
Arquitectura distinta
Sistema operativo distinto
398
Arquitectura de Computadores
tiempo.
399
Arquitectura de Computadores
de fallos.
400
Arquitectura de Computadores
Alta eficiencia: Son clusters cuyo objetivo de diseo es el ejecutar la mayor cantidad de
tareas en el menor tiempo posible. Existe independencia de datos entre las tareas
individuales. El retardo entre los nodos del cluster no es considerado un gran problema.
Aplicaciones corriendo en clusters
Simulaciones de biotecnologa,
401
Arquitectura de Computadores
Petroleras
Modelacin de mercados financieros,
Grandes clculos matemticos,
Prediccin del clima,
Servidores de Internet.
402
Arquitectura de Computadores
Componentes de un Cluster
En general, un cluster necesita de varios componentes de software y hardware para poder
funcionar. A saber:
Nodos
Sistemas Operativos
403
Arquitectura de Computadores
Conexiones de Red
Middleware
Aplicaciones
404
Arquitectura de Computadores
Nodos
Pueden ser simples ordenadores, sistemas multi procesador o estaciones de trabajo
(workstations). En informtica, de forma muy general, un nodo es un punto de interseccin
o unin de varios elementos que confluyen en el mismo lugar. Ahora bien, dentro de la
405
Arquitectura de Computadores
(apuntar) a otro nodo. Si la estructura tiene slo un puntero, la nica estructura que se
406
Arquitectura de Computadores
Mientras que, en un cluster con nodos no dedicados, los nodos disponen de teclado,
407
Arquitectura de Computadores
408
Arquitectura de Computadores
diferencia grande entre capacidad de procesadores, memoria, HD) sera ineficiente debido
a que el middleware delegara o asignara todos los procesos al Nodo de mayor capacidad
de Cmputo y solo distribuira cuando este se encuentre saturado de procesos; por eso es
409
Arquitectura de Computadores
Almacenamiento
El almacenamiento puede consistir en una NAS, una SAN, o almacenamiento interno en
el servidor. El protocolo ms comnmente utilizado es NFS (Network File System),
sistema de ficheros compartido entre servidor y los nodos. Sin embargo existen sistemas
de ficheros especficos para clusters como Lustre (CFS) y PVFS2.
410
Arquitectura de Computadores
IDE (PATA, Parallel ATA): Anchos de banda (Bw) de 33, 66, 100 y 133MBps.
411
Arquitectura de Computadores
412
Arquitectura de Computadores
Mientras NAS permite compartir el almacenamiento, utilizar la red, y tiene una gestin
ms sencilla, DAS proporciona mayor rendimiento y mayor fiabilidad al no compartir el
recurso.
Sistema Operativo
Debe ser multiproceso, multiusuario. Otras caractersticas deseables son la facilidad de
413
Arquitectura de Computadores
414
Arquitectura de Computadores
Ejemplos
GNU/Linux
o OpenMosix
o Rocks[2]
415
Arquitectura de Computadores
o Kerrighed
o Cndor
o Sun Grid Engine
Unix
416
Arquitectura de Computadores
o Solaris
o HP-UX
Sun Grid Engine
417
Arquitectura de Computadores
o Aix
Windows
o NT
418
Arquitectura de Computadores
o 2000 Server
o 2003 Server
o 2008 Server
419
Arquitectura de Computadores
Mac OS X
o Sun Grid Engine
o Xgrid
Solaris
420
Arquitectura de Computadores
FreeBSD
421
Arquitectura de Computadores
Conexiones de Red
Los nodos de un cluster pueden conectarse mediante una simple red Ethernet con placas
comunes (adaptadores de red o NICs), o utilizarse tecnologas especiales de alta
velocidad como Fast Ethernet, Gigabit Ethernet, Myrinet, Infiniband, SCI, etc.
Ethernet
422
Arquitectura de Computadores
solucin acertada.
423
Arquitectura de Computadores
comunicacin empleado.
424
Arquitectura de Computadores
425
Arquitectura de Computadores
426
Arquitectura de Computadores
Infiniband
o Es una red surgida de un estndar desarrollado especficamente para
427
Arquitectura de Computadores
428
Arquitectura de Computadores
429
Arquitectura de Computadores
hipercubo (3D) sin necesidad de switch, se tiene una red adecuada para
clsters de pequeo y mediano tamao.
o Al ser una red de extremadamente baja latencia, presenta ventajas frente a
Myrinet en clusters de pequeo tamao al tener una topologa punto a punto
y no ser necesaria la adquisicin de un conmutador. El software sobre SCI
est menos desarrollado que sobre Myrinet, pero los rendimientos obtenidos
430
Arquitectura de Computadores
431
Arquitectura de Computadores
Middleware
El middleware es un software que generalmente acta entre el sistema operativo y las
aplicaciones con la finalidad de proveer a un cluster lo siguiente:
Una interfaz nica de acceso al sistema, denominada SSI (Single System Image),
la cual genera la sensacin al usuario de que utiliza un nico ordenador muy
potente;
432
Arquitectura de Computadores
433
Arquitectura de Computadores
Existen diversos tipos de middleware, como por ejemplo: MOSIX, OpenMOSIX, Cndor,
OpenSSI, etc.
El middleware recibe los trabajos entrantes al cluster y los redistribuye de manera que el
proceso se ejecute ms rpido y el sistema no sufra sobrecargas en un servidor. Esto se
434
Arquitectura de Computadores
administrador) que le indican dnde y cmo debe distribuir los procesos, por un sistema
de monitorizacin, el cual controla la carga de cada CPU y la cantidad de procesos en l.
El middleware tambin debe poder migrar procesos entre servidores con distintas
finalidades:
435
Arquitectura de Computadores
balancear la carga: si un servidor est muy cargado de procesos y otro est ocioso,
pueden transferirse procesos a este ltimo para liberar de carga al primero y
optimizar el funcionamiento;
436
Arquitectura de Computadores
procesamiento.
437
Arquitectura de Computadores
438
Arquitectura de Computadores
arrancar automticamente los servicios que han fallado en cualquiera de los otros equipos
439
Arquitectura de Computadores
del clster. Y cuando el servidor que ha fallado se recupera, los servicios se migran de
nuevo a la mquina original.
Esta capacidad de los clsters de restablecer en pocos segundos un servicio,
manteniendo la integridad de los datos, permite que en muchos casos los usuarios no
tengan porque notar que se ha producido un problema. Cuando una avera de este tipo,
440
Arquitectura de Computadores
441
Arquitectura de Computadores
* Aumentar la disponibilidad
* Mejorar el rendimiento
* Escalabilidad
* Tolerancia a fallos
442
Arquitectura de Computadores
* Consolidar el almacenamiento
443
Arquitectura de Computadores
444
Arquitectura de Computadores
Configuracin Activo/Activo.
En una configuracin activo/activo, todos los servidores del clster pueden ejecutar los
mismos recursos simultneamente. Es decir, los servidores poseen los mismos recursos y
Anlisis - Arquitectura de Computadores
445
Arquitectura de Computadores
nodo del sistema falla y deja de estar disponible, sus recursos siguen estando accesibles
a travs de los otros servidores del clster.
La ventaja principal de esta configuracin es que los servidores en el clster son ms
eficientes ya que pueden trabajar todos a la vez. Sin embargo, cuando uno de los
servidores deja de estar accesible, su carga de trabajo pasa a los nodos restantes, lo que
produce una degradacin del nivel global de servicio ofrecido a los usuarios.
446
Arquitectura de Computadores
formando un clster.
447
Arquitectura de Computadores
448
Arquitectura de Computadores
449
Arquitectura de Computadores
Configuracin Activo/Pasivo.
450
Arquitectura de Computadores
est
disponible.
451
Arquitectura de Computadores
que los servicios solo se reinician cuando el servidor activo deja de responder. Sin
embargo, una desventaja de esta configuracin es que los servidores pasivos no
proporcionan ningn tipo de recurso mientras estn en espera, haciendo que la solucin
sea menos eficiente que el clster de tipo activo/activo. Otra desventaja es que los
452
Arquitectura de Computadores
453
Arquitectura de Computadores
454
Arquitectura de Computadores
455
Arquitectura de Computadores
456
Arquitectura de Computadores
457
Arquitectura de Computadores
red,
tiempo
de
CPU,
memoria,
etc.
458
Arquitectura de Computadores
El software de clster permite definir grupos de recursos, que son todos aquellos recursos
necesarios por el servicio. Estos recursos sern los scripts de arranque del servicio, un
459
Arquitectura de Computadores
460
Arquitectura de Computadores
El
Intercomunicacin
software
de
clster
en
los
mantener
servicios y recursos
461
gestiona
nodos.
Pero
Arquitectura de Computadores
continuamente entre estos una visin global de la configuracin y estado del clster. De
esta forma, ante el fallo de un nodo, el resto conoce que servicios se deben restablecer.
Ya que la comunicacin entre los nodos del clster es crucial para el funcionamiento de
este, es habitual utilizar un canal especfico como una red IP independiente o una
conexin serie, que no se pueda ver afectada por problemas de seguridad o rendimiento.
Heartbeat
462
Arquitectura de Computadores
463
Arquitectura de Computadores
464
Arquitectura de Computadores
el
fallo
de
estos.
465
Arquitectura de Computadores
Reiniciar Recursos
Cuando un recurso falla, la primera medida que toman las soluciones de clster es
intentar reiniciar dicho recurso en el mismo nodo. Lo que supone detener una aplicacin o
liberar
un
recurso
posteriormente
volverlo
activar.
466
Arquitectura de Computadores
reinicio completo de todo un grupo de recursos (servicio). Esto puede llegar a demorar
bastante para servicios como las bases de datos.
-
467
Arquitectura de Computadores
grupo
de
recursos
otro
nodo
disponible
en
el
clster.
De este modo el tiempo de inactividad por el posible fallo es mnimo, y el clster seguir
468
Arquitectura de Computadores
469
Arquitectura de Computadores
470
Arquitectura de Computadores
471
Arquitectura de Computadores
472
Arquitectura de Computadores
473
Arquitectura de Computadores
474
Arquitectura de Computadores
UNIDAD VII:
475
Arquitectura de Computadores
SOLUCIONES
ALMACENAMIENTO
476
DE
Arquitectura de Computadores
477
Arquitectura de Computadores
478
Arquitectura de Computadores
RAID Nivel 0 distribuye los datos a travs de varios discos. Este tipo de
configuracin no proporciona redundancia (no es precisamente RAID), pero maneja
varios discos como si fueran uno solo, lo que proporciona una mayor velocidad de
lectura y escritura. Lamentablemente, si un disco falla en un arreglo Nivel 0, el
sistema se cae. El nivel 0 requiere al menos 2 discos, siendo muy til cuando se
desea aadir capacidad de disco sin aumentar nombres de identificacin de
volumen.
479
Arquitectura de Computadores
480
Arquitectura de Computadores
datos en el orden de cientos de gigabytes. Inclusive con los bajos costos actuales
481
Arquitectura de Computadores
de los discos duros, RAID Nivel 1 solo tiene sentido para datos de misin crtica
que deben estar disponibles permanentemente en lnea. El Nivel 1 requiere al
482
Arquitectura de Computadores
483
Arquitectura de Computadores
RAID Nivel 2 utiliza cdigos de correccin Hamming. Est diseado para ser
utilizado con discos que carecen de deteccin de error interna (discos antiguos).
Todos los discos SCSI soportan deteccin de error interna, por lo que este nivel de
RAID tiene muy poca utilidad prctica para esos modelos de discos.
484
Arquitectura de Computadores
Debido a que RAID Nivel 3 escribe los datos en grandes bloques de informacin,
485
Arquitectura de Computadores
es una alternativa apropiada para aplicaciones tales como video que envan y
486
Arquitectura de Computadores
487
Arquitectura de Computadores
RAID Nivel 4 distribuye los datos a nivel de bloque (la principal diferencia con el
nivel 3), a travs de varios discos, con la paridad almacenada en un disco. La
informacin de paridad permite la recuperacin de cualquier disco en caso de falla.
El rendimiento de un arreglo nivel 4 es muy bueno para lecturas (similar al nivel 0).
Sin embargo, la escritura requiere que los datos de paridad sean actualizados cada
488
Arquitectura de Computadores
vez. Esto retarda particularmente las escrituras aleatorias pequeas, aunque las
escrituras grandes o secuenciales son razonablemente rpidas. Debido a que
solamente un disco es del arreglo es utilizado para datos redundantes, el costo por
megabyte de un arreglo nivel 4 es relativamente bajo.
489
Arquitectura de Computadores
490
Arquitectura de Computadores
SAN y NAS
491
Arquitectura de Computadores
492
Arquitectura de Computadores
comunicacin de una compaa. Adems de contar con interfaces de red tradicionales, los
493
Arquitectura de Computadores
equipos con acceso a la SAN tienen una interfaz de red especfica que se conecta a la
SAN.
NAS, es el nombre dado a una tecnologa de almacenamiento dedicada a compartir la
capacidad
de
almacenamiento
de
un
computador
(Servidor)
con ordenadores
personales o servidores clientes a travs de una red (normalmente TCP/IP), haciendo uso
494
Arquitectura de Computadores
de
un Sistema
Operativo optimizado
para
dar
acceso
con
los
comparte sus unidades por red, pero la definicin suele aplicarse a sistemas especficos.
495
Arquitectura de Computadores
SAN
Una SAN (Storage Area Network) es una red de alta velocidad diseada especialmente
para el almacenamiento de datos y que est conectada a uno o ms servidores a travs
Anlisis - Arquitectura de Computadores
496
Arquitectura de Computadores
de la red a travs de los servidores, y los datos son escalables hasta 50TBs. El
almacenamiento de datos centralizado reduce la administracin necesaria y proporciona
un tipo de almacenamiento de alto rendimiento y flexible para entornos multiservidor /
multivendedor.
497
Arquitectura de Computadores
498
Arquitectura de Computadores
Ventajas y Desventajas
El rendimiento de la SAN est directamente relacionado con el tipo de red que se utiliza.
En el caso de una red de canal de fibra, el ancho de banda es de aproximadamente 100
megabytes/segundo (1.000 megabits/segundo) y se puede extender aumentando la
499
Arquitectura de Computadores
La capacidad de una SAN se puede extender de manera casi ilimitada y puede alcanzar
cientos y hasta miles de terabytes.
Una SAN permite compartir datos entre varios equipos de la red sin afectar el rendimiento
porque el trfico de SAN est totalmente separado del trfico de usuario. Son los
servidores de aplicaciones que funcionan como una interfaz entre la red de datos
500
Arquitectura de Computadores
Por otra parte, una SAN es mucho ms costosa que una NAS ya que la primera es una
arquitectura completa que utiliza una tecnologa que todava es muy cara. Normalmente,
cuando una compaa estima el TCO (Coste total de propiedad) con respecto al coste por
501
Arquitectura de Computadores
NAS
El NAS (Network-Attached Storage) contiene un solo dispositivo de almacenamiento que
est directamente conectado a una LAN y que ofrece datos compartidos a todos los
clientes de la red. Un dispositivo NAS es sencillo de instalar y de administrar, y
502
Arquitectura de Computadores
503
Arquitectura de Computadores
los casos.
504
Arquitectura de Computadores
Por lo general, posee su propio sistema de archivos que aloja al sistema operativo, as
como tambin una serie de discos independientes que se utilizan para alojar los datos que
se van a guardar.
505
Arquitectura de Computadores
506
Arquitectura de Computadores
507
Arquitectura de Computadores
508
Arquitectura de Computadores
UNIDAD VIII:
VIRTUALIZACIN
509
Arquitectura de Computadores
510
Arquitectura de Computadores
511
Arquitectura de Computadores
MODELOS DE VIRTUALIZACION
512
Arquitectura de Computadores
proporcionan el servicio. Dependiendo del recurso que se abstraiga, que puede ser un
513
Arquitectura de Computadores
recurso individual almacenamiento, red- o bien una plataforma - un servidor, mquinacompleta, y de por quin sea usado ese recurso.
Por ejemplo, en el caso de que mediante algn mecanismo un sistema hardware
completo sea abstrado de forma que pueda ser usado por diferentes instancias de
sistemas operativos (y sus respectivas aplicaciones) de forma que stas tengan la ilusin
514
Arquitectura de Computadores
entre dos conceptos como son el recurso virtual que se abstrae y el ente (aplicacin,
515
Arquitectura de Computadores
virtualizacin:
516
Arquitectura de Computadores
dispositivos mviles, etc. Por lo tanto, en este caso el recurso que se abstrae es el
517
Arquitectura de Computadores
almacenamiento fsico del entorno de escritorio del usuario como usuarios, no somos
conscientes del lugar fsico en el que se encuentra nuestro escritorio, simplemente
tenemos acceso a l-. Ejemplos muy importantes de soluciones que trabajan con
virtualizacin de escritorio son Wyse Technology, VMware View, Sun VDI, vDesk de ing
518
Arquitectura de Computadores
519
Arquitectura de Computadores
520
Arquitectura de Computadores
521
Arquitectura de Computadores
522
Arquitectura de Computadores
523
Arquitectura de Computadores
consolidacin de servidores.
La
virtualizacin
consolidacin de
524
Arquitectura de Computadores
525
Arquitectura de Computadores
Virtual PC.
526
Arquitectura de Computadores
527
Arquitectura de Computadores
prdida en el rendimiento.
528
Arquitectura de Computadores
virtualizacin).
529
Arquitectura de Computadores
530
Arquitectura de Computadores
531
Arquitectura de Computadores
532
Arquitectura de Computadores
533
Arquitectura de Computadores
534
Arquitectura de Computadores
535
Arquitectura de Computadores
virtualizacin de
536
Arquitectura de Computadores
537
Arquitectura de Computadores
todos son el espacio Swap utilizados por los sistemas operativosUnix, o las
tcnicas de paginado de memoria usadas en sistemas operativos Microsoft.
o Virtualizacin de almacenamiento. Abstraccin completa del almacenamiento
lgico sobre el fsico (disco y almacenamiento son
el recurso abstrado). Es
538
Arquitectura de Computadores
Systems), AFS, GFS, iSCSI (Internet SCSI), AoE (ATA over Ethernet).
o Virtualizacin de red. La virtualizacin de red consiste en la creacin de un
espacio de direcciones de red virtualizado dentro de otro o entre subredes. Es fcil
ver que el recurso abstrado es la propia red. Ejemplos bien conocidos de
539
Arquitectura de Computadores
Card).
540
Arquitectura de Computadores
541
Arquitectura de Computadores
para ser ejecutadas en sistemas operativos para los cuales no fueron implementadas.
542
Arquitectura de Computadores
543
Arquitectura de Computadores
incluyen dentro de esta categora las aplicaciones heredades que son ejecutadas
544
Arquitectura de Computadores
545
Arquitectura de Computadores
546
Arquitectura de Computadores
547
ThinApp,
Arquitectura de Computadores
548
Arquitectura de Computadores
VIRTUALIZACION
Al software de virtualizacin se le llama:
Hipervisor.
549
Arquitectura de Computadores
anfitrin)
A una instancia del hardware virtualizado se la conoce como Mquina Virtual o VM.
Los sistemas operativos huspedes corren dentro de una VM.
Virtualizacin es la tcnica empleada sobre las caractersticas fsicas de algunos
550
Arquitectura de Computadores
interacten con ellos. Esto implica hacer que un recurso fsico, como un servidor, un
sistema operativo o un dispositivo de almacenamiento, aparezca como si fuera varios
recursos lgicos a la vez, o que varios recursos fsicos, como servidores o dispositivos de
551
Arquitectura de Computadores
552
Arquitectura de Computadores
553
Arquitectura de Computadores
Hay varias formas de ver o catalogar la virtualizacin, pero en general se trata de uno
de estos dos casos:
En general, hay un software anfitrin que es el que controla que las diferentes
554
Arquitectura de Computadores
555
Arquitectura de Computadores
existe una forma de virtualizacin de recursos muy popular que no es sino las
redes privadas virtuales o VPN, abstraccin que permite a un PC conectarse a una
red corporativa a travs de la Internet como si estuviera en la misma sede fsica de
la compaa.
VENTAJAS DE LA VIRTUALIZACION
556
Arquitectura de Computadores
557
Arquitectura de Computadores
558
Arquitectura de Computadores
559
Arquitectura de Computadores
560
Arquitectura de Computadores
proporcionen recursos a las mquinas virtuales y asignar una aplicacin que haga un
561
Arquitectura de Computadores
562
Arquitectura de Computadores
de licencia por usuario existentes actualmente, por lo cual es probable que cambien las
reglas respecto al licenciamiento de software.
RETOS DE LA VIRTUALIZACIN:
las VMs.
563
Arquitectura de Computadores
DISPONIBILIDAD
Es conocida como HA, es una implantacin de un sistema de forma que nos
garantiza una gran tolerancia a fallos y una continuidad de funcionamiento durante un
tiempo prolongado.
564
Arquitectura de Computadores
565
Arquitectura de Computadores
RENDIMIENTO
566
Arquitectura de Computadores
567
Arquitectura de Computadores
568
Arquitectura de Computadores
partes que pueden ser paralelizables. Los conocimientos del programador tambin son
569
Arquitectura de Computadores
muy importantes ya que junto con el diseo del algoritmo, los desarrollos pueden
adaptarse mucho mejor al hardware del sistema.
INDICADORES DEL RENDIMIENTO DE UN COMPUTADOR
Los indicadores del rendimiento de un computador son una serie de parmetros que
conforma una modelo simplificada de la medida del rendimiento de un sistema y son
Anlisis - Arquitectura de Computadores
570
Arquitectura de Computadores
571
Arquitectura de Computadores
Frecuencia de reloj (f).-Es la inversa del tiempo de ciclo. Medida en Mega Hertz.
Total de Instrucciones (Ic).-Es el nmero de instrucciones objeto a ejecutar en un
programa.
Ciclos por instruccin (CPI).-Es el nmero de ciclos que requiere cada
572
Arquitectura de Computadores
HIPERVISOR
La virtualizacin no slo permite ahorrar costes, tambin permite a las empresas obtener
plataformas IT ms giles, ms fcilmente replicables y adaptables a las necesidades de
los usuarios. Pero para que las empresas puedan obtener esos beneficios, deben superar
desafos como: el hecho de tener centros de datos ms heterogneos, falta de
Anlisis - Arquitectura de Computadores
573
Arquitectura de Computadores
574
Arquitectura de Computadores
575
Arquitectura de Computadores
576