Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1
Basado principalmente en los libros
Organización y Arquitectura de Computadores,
William Stallings.
Arquitectura de Microcontroladores, José María
Usategui, José Luis Gutiérrez Temiño, Ignacio
Angulo Martínez
Microcontroladores, José M. Angulo, Ignacio Angulo
2
Sitios Recomendados
http://www.zator.com/Hardware/H2_3.htm
http://wwwdi.ujaen.es/~lina/TemasSO/glosario/GLOSARIO.htm#DMA
http://www.intel.com/espanol/products/server/processors/server/itanium2/
http://www.tau.org.ar/base/lara.pue.udlap.mx/sistoper/capitulo6.html
http://usuarios.lycos.es/cursosimm/capitulo5.htm
http://www.intec.edu.do/~yberges/ocurre7.htm
http://html.rincondelvago.com/arquitecturas-avanzadas.html
http://atc2.aut.uah.es/~frutos/arqINF/tema6.pdf
http://www.micropic.arrakis.es/marcos.htm
3
Sitios Recomendados
http://www.duiops.net/hardware/micros/micros.htm
http://www.duiops.net/hardware/articulo/64bitscpu.htm
http://www.pc.com.mx/Procesadores/procesadores.html
http://www.zator.com
http://www.isde-ing.com/Qedom.htm
http://users.erols.com/chare/sockets.htm
http://www.amd.com/la-es/Processors/ProductInformation/0,,30_118_8826_8805,00.html
http://www.mastermagazine.info/informes/amd_intel_2004_f.htm
http://www.pc.com.mx/Procesadores/procesadores.html
ttp://dc.inictel.gob.pe/telecom/Pap/ProgAplic_PicMicrochip/pap_curso_11.htm
4
Lecturas Recomendadas
5
1. Historia y Evolución de los
Computadores
6
1.Historia y Evolución de
los Computadores
• Eras
9 Era Pre-electrónica.
Ábaco.
Máquina de Pascal.
7
1.Historia y Evolución de
los Computadores
9 Era Pre-electrónica.
8
1.Historia y Evolución de
los Computadores
9 Era Pre-electrónica.
Calculadora de Leibniz.
9
1.Historia y Evolución de
los Computadores
9 Era Electrónica.
Primera Generación (1946-1957) Tubos de Vacío
10
1.Historia y Evolución de
los Computadores
E.N.I.A.C.
11
1.Historia y Evolución de
los Computadores
Unidad
Aritmético-Lógica
Memoria Equipos de
Principal E/S
Unidad
de
Control de Programa
12
1.Historia y Evolución de
los Computadores
9 Ley de Moore
13
1.Historia y Evolución de
los Computadores
9 Memoria.
9 Microprocesadores (4004).
Fue el primer chip que contenía todos los
componentes de la CPU en un solo chip.
•Memoria:
La tecnología de los circuitos integrados también sirvió para construir memorias. En los 50 y 60, la
mayoría de las memorias de los computadores se hacían con pequeños anillos de material ferromagnético dispuestos de tal
forma que se magnetizaban en un sentido para representar un 0 y en el otro sentido para representar un 1. Si bien eran
memorias rápidas, eran caras, voluminosas y usaba lectura destructiva.
En 1970, Fairchild produjo la primera memoria semiconductora, chip que podía tener 256 bits de
memoria. No era destructiva.
La tendencia ha sido desde 1974 de disminución del precio de la memoria acompañado de un
correspondiente aumento de la densidad de memoria. A partir de 1970 , la memoria semiconductora ha tenido ocho
generaciones:
1K, 4K, 16K, 64K, 256K, 1M, 4M, ahora 16M bits en un solo chip.
•Microprocesadores:
Igual que la densidad de elementos en los chips de memoria ha continuado creciendo, también lo ha
hecho la densidad de elementos de procesamiento. La evolución se puede ver más fácilmente considerando el número
de bits que el procesador trata a la vez. No hay una medida clara de esto, pero la mejor medida es la anchura del bus
de datos: el número de bits de un dato que puede venir o ir al procesador a la vez.
En 1969, Silicon Valley, en el estado de California (EEUU) era el centro de la industria de los
semiconductores. Por ello, gente de la empresa Busicom, una joven empresa japonesa, fue a la compañía Intel
(fundada el año anterior) para que hicieran un conjunto de doce chips para el corazón de su nueva calculadora de mesa
de bajo costo. En 1971 Intel desarrolló el 4004 que fue el primer chip que contenía todos los componentes de la CPU en
un solo chip.
Podía sumar dos números de 4 bits y multiplicar sólo con sumas sucesivas. Primitivo, pero con él se
marcó el comienzo de la evolución continua en capacidad y potencia de los microprocesadores.
Posteriormente se diseñó el 8008, microprocesador de 8 bits (en la anchura del bus), dos veces más
complejo que el 4004.
14
1.Historia y Evolución de
los Computadores
9 Dos familias de computadores de las que
se tratarán ejemplos son:
PENTIUM
POWERPC
•Pentium: incorpora los sofisticado principios de diseño que se encontraban en ordenadores grandes
y supercomputadoras, la tecnología CISC.
CISC: es una abreviación de "Complex Instrution set computer". Se refiere a los microprocesadores
tradicionales que operan con grupos grandes de instrucciones de procesador (lenguaje de máquina).
Todos los microprocesadores de la serie X86 de Intel y sus clones como los K5, K6 de AMD y el
6x86 (M-II) de Cyrix, están construidos bajo esta tecnología. Los procesadores CISC tienen un Set
de instrucciones complejas por naturaleza que requieren varios a muchos ciclos para completarse.
•PowerPC: es descendiente directo del primer sistema RISC, el IBM 801, que es uno de los
sistemas más potentes y mejor diseñados del mercado.
RISC: es una abreviación de "Reduced Instruction Set Code", a diferencia de los CISC, los
procesadores RISC tienen un pequeño conjunto de instrucciones básicas requiriendo unos o pocos
ciclos de ejecución. Estas instrucciones pueden ser utilizadas más eficientemente que la de los
procesadores CISC con el diseño de software apropiado, resultando en operaciones más rápidas en
funciones intensivas en tiempo como son las gráficas, el video, sonido.
15
1.Historia y Evolución de
Computador
los Computadores
Computador Familia 386 Familia 486
tipo tipo
PC-XT PC-AT
16
1.Historia y Evolución de
los Computadores
Quinta Generación Sexta Generación Séptima Generación
17
1.Historia y Evolución de
Computador
los Computadores
Computador tipo Familia 386 Familia 486
tipo PC-AT
PC-XT
Tipo de TTL CGA manejaba VGA con 256 SVGA de
Monitor monocromático gráficos sencillos, colores 800x600 pixeles
(letras, 4 colores máximo (resolución de y hasta 64.000
números, o EGA con 16 640x480 pixeles) colores
símbolos) colores
Sistema DOS 1.0 a DOS DOS 4.0 DOS 5.0 + DOS 6.22 +
Operativo 3.3 Windows 3.1, Windows 3.11
típico Aparece Linux Workstation
18
1.Historia y Evolución de
los Computadores
Quinta Generación Sexta Generación Séptima Generación
19
1.Historia y Evolución de
los Computadores
8080: primer microprocesador de propósito general. Tenía 8 bits, más
rápido, mayor capacidad de direccionamiento.
8086: microprocesador de 16 bits de propósito general, más potente. Tenía un
caché de instrucción, o cola, que precaptaba algunas instrucciones antes de ser
ejecutadas.
80286: permitía direccionar una memoria de 16MBytes.
80386: primera máquina Intel con 32 bits.
80486: introduce el uso de tecnología de caché mucho más sofisticada y potente.
80486 DX: posee el doble de la velocidad que el 80386 y mantiene la
compatibilidad con los procesadores precedentes.
80486 SX: es una solución de menor coste que no incluye coprocesador
matemático.
80486 DX2: posee duplicador de frecuencia interno, y el procesador funciona al
doble de velocidad.
80486 SL: reduce la tensión de trabajo del procesador para conseguir un ahorro
de energía.
20
1.Historia y Evolución de
los Computadores
21
1.Historia y Evolución de
los Computadores
Pentium IV: ofrece una nueva generación de recursos para procesar y ejecutar
con mayor rapidez muchas aplicaciones populares de imágenes, música, vídeo y
juegos digitales, optimizando el rendimiento para las tecnologías modernas de
Internet y visualización de gráficos en tres dimensiones.
Pentium IV HT: la Tecnología Hyper-Threading (HT) es una tecnología
innovadora que permite al procesador pentium 4 ejecutar encadenamientos de
instrucciones en paralelo, y permite que los usuarios hagan más en menos
tiempo.
Itanium2: este es el primer procesador con arquitectura completa de 64 bits. Está
basado en la arquitectura EPIC, que le permite ejecutar hasta 6 instrucciones en
paralelo por ciclo de reloj. Permite trabajar con Aplicaciones de servidor y
multiprocesador enfocadas a las bases de datos, inteligencia empresarial (BI),
gestión de la cadena de suministros (SCM), planificación de recursos
empresariales (ERP) e informática de alto rendimiento (HPC).
22
2. Funcionamiento y
Organización del Computador
23
2. Funcionamiento y
Organización del Computador
• Las funciones básicas que un computador
puede realizar
9 Procesamiento de Datos.
9 Almacenamiento de Datos.
9 Transferencia de Datos.
9 Control.
24
2. Funcionamiento y
Organización del Computador
• Componentes de un computador
9 Unidad Central de Procesamiento
9 Memoria Principal
9 E/S
9 Sistema de Interconexión (Bus del
Sistema)
25
2. Funcionamiento y
Organización del Computador
Computador CPU
E/S
Registros ALU
Bus de
Sistema CPU Interconexión
Interna
Memoria
Unidad de
Control
Esquema resumen.
26
2. Funcionamiento y
Organización del Computador
9 Unidad Central de Procesamiento (CPU)
Unidad de Control
ALU (Unidad Aritmético Lógica)
Registros
Interconexiones CPU
27
2. Funcionamiento y
Organización del Computador
CPU Memoria
.
PC MAR .
.
Instrucción
IR MBR Instrucción
Instrucción
.
.
E/S AR
.
Datos
Datos
E/S BR
Datos
.
.
Módulo de E/S .
Registros
La figura muestra los componentes de alto nivel y la interacción entre ellos. A continuación se
describirán en forma breve.
La CPU se encarga del control, intercambia datos con la memoria para lo cual utiliza
por lo general sus registros internos:
•Registro de Dirección de Memoria (MAR) que especifica la dirección de memoria de la próxima
lectura o escritura.
•Registro para Datos de Memoria (MBR) que contiene el dato que se va a escribir en memoria o
donde se escribe el dato que se va a leer de memoria.
•Registro de Direcciones de E/S (E/S AR) que especifica un dispositivo de E/S.
•Registro para Datos de E/S (E/S BR) que se utiliza para intercambiar datos entre un módulo de E/S
y la CPU.
También es necesario mencionar los registros Contador de Programa (PC) y el
Registro de Instrucción (IR), que se verán más adelante, cuando se explique la forma en que un
computador ejecuta sus programas.
Un Módulo de Memoria consta de un conjunto de posiciones, designadas por
direcciones numerada secuencialmente. Cada posición contiene un número binario que puede ser
interpretado como una instrucción o como un dato.
Un Módulo de E/S transfiere datos desde los dispositivos externos a la CPU y a la
memoria, y viceversa. Contiene los registros internos para almacenar los datos temporalmente,
hasta que puedan enviarse.
28
2. Funcionamiento y
Organización del Computador
¿Cómo lo hace el computador para ejecutar un
programa ?
Captar la
Ejecutar la
INICIO Siguiente PARADA
Instrucción
Instrucción
29
2. Funcionamiento y
Organización del Computador
1. La CPU capta una instrucción de memoria.
2. La CPU incrementa el Contador de Programa.
3. La instrucción captada se almacena en el Registro
de Instrucción en código binario (la instrucción
especifica la acción que debe realizar la CPU).
4. La CPU interpreta la instrucción y realiza la acción
especificada.
30
2. Funcionamiento y
Organización del Computador
Tipos de acción especificadas en la instrucción:
a. Procesador-Memoria.
b. Procesador-E/S.
c. Procesamiento de Datos.
d. Control.
31
2. Funcionamiento y
Organización del Computador
0 34 15
Codop Dirección
PC = Dirección de Instrucción
IR = Instrucción en Ejecución
AC = Almacenamiento Temporal
Ejemplo.
Considérese una máquina hipotética, cuyo procesador tiene un único registro de
datos (AC) y las características indicadas en la figura.
Las instrucciones y los datos son de 16 bits.
El formato de instrucción indica que pueden haber 24 = 16 códigos de operación
(codop) diferentes.
Se pueden direccionar directamente hasta 212 = 4096 (4K) palabras de memoria.
Lo que va a hacer a máquina hipotética es la ejecución de una parte
de un programa. Utiliza notación hexadecimal.
•La parte de programa suma el contenido de la palabra de memoria en la dirección
94016 con el contenido de la palabra de memoria en la dirección 94116
•Almacena el resultado en la dirección 94116.
Se requieren tres instrucciones, que consumen tres ciclos de
captación y tres de ejecución.
32
2. Funcionamiento y
Organización del Computador
I. II.
33
2. Funcionamiento y
Organización del Computador
III. IV.
34
2. Funcionamiento y
Organización del Computador
V. VI.
35
2. Funcionamiento y
Organización del Computador
Varios
Varios Resultados
operandos
Decodificación
Cálculo de Cálculo de Cálculo de
de la operación Operación
la dirección de la dirección de la dirección de
de la con datos
instrucción operando operando
instrucción
Con un conjunto de instrucciones más complejo se hubieran necesitado menos ciclos. Los
procesadores actuales incluyen instrucciones que contienen más de una dirección. Así, el ciclo de
ejecución de una instrucción puede incluir más de una referencia a memoria. Una instrucción puede
especificar una operación de E/S también.
La figura, que tiene la forma de un diagrama de estados, proporciona una visión
más detallada del ciclo de instrucción básico presentado con anterioridad. Estos estados son:
•Cálculo de la dirección de la instrucción: determina la dirección de la siguiente instrucción a
ejecutar.
•Captación de instrucción: la CPU lee la instrucción desde su posición en memoria
•Decodificación de la operación indicada en la instrucción: analiza la instrucción para determinar el
tipo de operación a realizar y el/los operando(s) a utilizar.
•Cálculo de la dirección del operando: si la instrucción implica una referencia a un operando en
memoria o disponible mediante E/S, determina la dirección del operando.
•Captación de operando: capta el operando desde memoria o se lee desde el dispositivo de E/S.
•Operación con los datos: realiza la operación indicada en la instrucción.
•Almacenamiento de operando: escribe el resultado en memoria o lo saca a través de un dispositivo
de E/S.
Los estados en la parte superior de la figura ocasionan intercambios entre la CPU y
la memoria o un módulo de E/S. Los de abajo ocasionan operaciones internas a la CPU.
36
2. Funcionamiento y
Organización del Computador
Clases de interrupciones
Interrupciones
Casi todos los computadores disponen de un mecanismo mediante el que otros
módulos, por ejemplo E/S, memoria, pueden interrumpir el procesamiento normal
de la CPU. En la tabla se ven las clases más comunes de interrupciones.
Propósito de las Interrupciones:
Las interrupciones tienen el propósito de mejorar la eficiencia del procesador.
Como la mayoría de los dispositivos externos son más lentos que el procesador
mediante las interrupciones se evita que éste se detenga y permanezca ocioso.
Con el uso de interrupciones el procesador puede dedicarse a la ejecución de otras
instrucciones mientras una operación de E/S está en curso.
37
2. Funcionamiento y
Organización del Computador
9 Buses
Un bus es un camino de comunicación entre dos
o más dispositivos.
Es un medio de transmisión compartido.
Al bus se conectan varios dispositivos.
Un bus está constituido por varios caminos de
comunicación, por líneas.
Un BUS es un canal en el que fluye la información entre dos o mas dispositivos, es decir,
es un canal de comunicación entre dispositivos. Teniendo siempre el microprocesador como centro
neurálgico donde se procesa la información.
Un BUS en el que sólo se pueden comunicar dos dispositivos es un PUERTO. El ejemplo más utilizado para
entender este concepto es la comparación de un bus con una autopista, la información que fluye por el bus
son los coches que circulan por la autopista y el ancho del bus son los carriles que tiene esa autopista,
cuantos más carriles (ancho) mas coches (información) pueden circular al mismo tiempo por la autopista
(bus). Teniendo en cuenta este concepto hablamos de un bus de 16 bits, de 32 bits, etc. La velocidad del bus
viene expresada en MHz y se pueden encontrar buses de 33 MHz, de 66 MHz, etc. En el ejemplo anterior de
la autopista la velocidad del bus sería la velocidad máxima a la que los coches pueden circular por los
carriles. El "ancho de banda" de un bus es la cantidad máxima de información que puede fluir por él en una
unidad de tiempo determinado (en el ejemplo utilizado el ancho de banda es la cantidad máxima de coches
que pueden circular por la autopista en un tiempo determinado, que depende del número de carriles de la
autopista y de la velocidad máxima a la que pueden circular los mismos por cada carril). Se expresa en bytes
por segundo, así por ejemplo un bus de 32 bits y con una velocidad máxima de 33,33 MHz tiene un ancho de
banda de 32 bits por ciclo de reloj x 33.333.333 ciclos de reloj por segundo = 1.066.666.656 bits por segundo,
es decir, 133,33 Mbytes/segundo. Otro ejemplo, el bus local del Pentium tiene una anchura de 64 líneas y
una frecuencia de 66 MHz, lo que proporciona un ancho de banda de 528 Mbytes/s.
Al bus se conectan varios dispositivos, y cualquier señal transmitida por uno de estos
dispositivos está disponible para que los otros dispositivos conectados al bus puedan acceder a ella. Si dos
dispositivos van y transmiten al mismo tiempo, sus señales pueden solaparse y distorsionarse. Por lo tanto
sólo un dispositivo puede lograr su transmisión con éxito.
Cada línea es capaz de transmitir señales binarias representadas por 1 y 0. En un intervalo
de tiempo, se puede transmitir una secuencia de dígitos binarios a través de una única línea. Se pueden usar
varias líneas del bus para transmitir dígitos binarios simultáneamente, o en paralelo. Un ejemplo, un dato de 8
bits puede transmitirse mediante ocho líneas del bus.
Los computadores tienen distintos tipos de buses que proporcionan comunicación entre su
componentes a distintos niveles dentro de la jerarquía del sistema. El bus que conecta los componentes
principales del computador (procesador, memoria y E/S) se denomina bus del sistema (system bus).
38
2. Funcionamiento y
Organización del Computador
9 Buses
Líneas de Control
Líneas de Dirección
Bus
Líneas de Datos
El bus del sistema está formado por entre 50 y 100 líneas. A cada línea se le asigna
una función especial. Las líneas se pueden clasificar en tres grupos funcionales. Líneas de datos,
líneas de direcciones, líneas de control.
•Líneas de Datos: proporcionan un camino para transmitir datos entre los módulos del sistema. El
conjunto constituido por estas líneas se denomina bus de datos. El bus de datos por lo general
consta de 8, 16 ó 32 líneas distintas, cuyo número se conoce como anchura del bus de datos.
Puesto que una línea sólo puede transmitir un bit cada vez, el número de líneas determina cuántos
bits se pueden transferir al mismo tiempo. La anchura del bus es un factor clave para determinar las
prestaciones del conjunto del sistema. Por ejemplo si el bus de datos tiene una anchura de 8 bits, y
las instrucciones son de 16 bits, entonces el procesador debe acceder al módulo de memoria dos
veces por cada ciclo de instrucción. Cuanto más ancho es el bus de datos, mayor es el número de
bits que se transmiten a la vez.
•Líneas de Direcciones: se utilizan para designar la fuente o el destino del dato situado en el bus de
datos. Si por ejemplo el procesador desea leer una palabra de (8,16, 32 bits) de datos de la
memoria, sitúa la dirección de la palabra deseada en las líneas de direcciones. La anchura del bus
de direcciones determina la máxima capacidad de memoria posible en el sistema. Cuanto más
ancho es el bus de direcciones, mayor es el rango de posiciones a las que se puede hacer
referencia. Las líneas de direcciones se usan también para direccionar los puertos de E/S. Los bits
de orden más alto se usan para seleccionar una posición de memoria o un puerto de E/S dentro de
un módulo. Por ejemplo, en un bus de 8 bits, la dirección 01111111 e inferiores harían referencia a
posiciones dentro de un módulo de memoria (el módulo 0) con 128 palabras de memoria, y las
direcciones 10000000 y superiores designarían dispositivos conectados a un modulo de E/S (módulo
1).
•Líneas de Control: Se usan para controlar el acceso y el uso de las líneas de datos y direcciones,
como estas líneas son compartidas por todos los componentes, debe existir una forma de controlar
su uso. Las señales de control transmiten tanto órdenes como información de temporización entre
los módulos el sistema.
39
2. Funcionamiento y
Organización del Computador
9 Buses
Líneas de control típicas
Escritura en memoria (Memory Write).
Lectura de memoria (Memory Read).
Escritura de E/S (I/O Write).
Lectura de E/S (I/O Read).
Transferencia reconocida (Transfer ACK).
Petición de bus (Bus Request).
Cesión de bus (Bus Grant).
Las señales de temporización indican la validez de los datos y las direcciones. Las
señales de órdenes especifican las operaciones a realizar. Algunas líneas de control típicas son:
•Escritura en memoria (Memory Write): hace que el dato del bus se escriba en la posición
direccionada.
•Lectura de memoria (Memory Read): hace que el dato de la posición direccionada se sitúe en el
bus.
•Escritura de E/S (I/O Write): hace que el dato del bus se transfiera a través del puerto de E/S
direccionado.
•Lectura de E/S (I/O Read): hace que el dato del puerto de E/S direccionado se sitúe en el bus.
•Transferencia reconocida (Transfer ACK): indica que el dato se ha aceptado o se ha situado en el
bus.
•Petición de bus (Bus Request): indica que un módulo necesita disponer
•Cesión de bus (Bus Grant): indica que se cede el control del bus a un módulo que lo había
solicitado.
•Petición de interrupción (Interrupt Request): indica si hay una interrupción pendiente.
•Interrupción reconocida (Interrupt ACK): señala que la interrupción pendiente se ha aceptado.
•Reloj (Clock): se utiliza para sincronizar las operaciones.
•Inicio (Reset): pone los módulos conectados en su estado inicial.
40
2. Funcionamiento y
Organización del Computador
9 Buses
Líneas de control típicas
Petición de interrupción (Interrupt
Request).
Interrupción reconocida (Interrupt ACK).
Reloj (Clock).
Inicio (Reset).
41
2. Funcionamiento y
Organización del Computador
9 Buses
Bus
Tarjetas
CPU
Memoria
.
.
.
E/S
42
2. Funcionamiento y
Organización del Computador
9 Buses
Conecta el microprocesador con
Bus Local la memoria caché y la memoria
principal.
43
2. Funcionamiento y
Organización del Computador
Tarjeta Madre
Plataforma física sobre la que se conectan los
distintos dispositivos que integran un
computador.
Es un medio de comunicación entre dos
componentes.
¡Es muy importante una correcta elección de
Tarjeta Madre en la configuración global de
un equipo!
Rendimiento.
Interoperabilidad del equipo.
44
2. Funcionamiento y
Organización del Computador
Tarjeta madre y sus módulos básicos
Ranuras de
Conectores para expansión
unidades de disco
Ranuras para
módulos de memoria
(RAM)
Chipset
Puertos de entrada-
salida
Zócalo para el
microprocesador
Todas las Tarjetas Madres están constituidas por los módulos básicos que
presenta la figura.
9Conectores para unidades de disco
9Ranuras para módulos de memoria RAM
9Zócalo para el procesador
9Ranuras de expansión
9Chipset
9Puertos de entrada-salida.
45
2. Funcionamiento y
Organización del Computador
Tarjeta madre y sus componentes
9 Zócalo del procesador.
9 Reloj.
9 Buses.
9 El juego de chips (chipset).
9 Regulador de Voltaje.
9 La BIOS, LA CMOS, y la pila del sistema.
9 Los zócalos de la RAM.
9 Los conmutadores manuales o jumpers.
9 Disipador de calor.
9 Conectores internos.
9 Conectores externos.
46
2. Funcionamiento y
Organización del Computador
47
2. Funcionamiento y
Organización del Computador
Tarjeta madre y sus componentes
9 Full AT
9 Baby AT
9 LPX
9 ATX
9 NLX
Las Tarjetas Madres vienen en varios formatos: Full AT, Baby AT, LPX, ATX, NLX.
Full AT:Es llamada así porque es igual al diseño de la tarjeta madre IBM AT original. Esto permite a tarjetas de
hasta 12 pulgadas de ancho y 13.8 pulgadas de profundidad. El conector de teclado y los conectores de los
slots deben estar colocados en los lugares especificados por los requerimientos para que correspondan con los
agujeros en el case o gabinete.
Baby AT: Es una versión mas pequeña de los AT, generalmente de 9 pulgadas de ancho y 10 pulgadas de
alto, que apareció en 1989. En este tipo de tarjeta madre el microprocesador está colocado en la parte de
enfrente de la tarjeta madre, de tal manera que si se quiere quitar el microprocesador es necesario quitar
algunas tarjetas, otro de los inconvenientes que posee es que para enfriar el microprocesador se necesita un
ventilador en el microprocesador. Otra diferencia es que incluye un conector para voltajes de solo 12v y 5 v.
Algunos diseños baby AT permiten instalar tarjetas madre AT o ATX.
No todos los AT y los Baby AT usan el estándar del conector DIN de 5 pines para el teclado. Este es el formato
mas popular y que se encuentra en la mayoría de computadoras ya que es muy flexible.
LPX:Este formato fue muy utilizado y es una variante especializada de un baby AT con un bajo perfil, fue
desarrollado por Western Digital para computadoras de escritorio para que no ocupen mucho espacio. Este tipo
de factor generalmente se encuentra en las computadoras Compaq, Hewlett Packard, Digital, Packard Bell, y
algunos fabricantes de tarjetas madre. Se encuentra en computadoras con case Slim, que es un gabinete de
escritorio delgado, lo que caracteriza este tipo de formato es que las tarjetas están montadas en un rise card en
el centro de la tarjeta. Los inconvenientes que presenta este tipo de tarjetas madre es que al estar el rise card
al centro de la tarjeta evita el flujo de aire y requiere mayor ventilación, es difícil quitar la tarjeta madre y en
algunos casos es necesario comprar solo del fabricante ya que cada quien soluciona el problema a su manera.
48
2. Funcionamiento y
Organización del Computador
ATX: La especificación oficial ATX fue presentada por Intel en Julio de 1995 pero aparece en 1996
es una reciente evolución en lo que a tarjetas madre se refiere y se espera que sea el estándar el
tamaño y la forma son completamente diferentes al AT. El tamaño es generalmente 12 pulgadas de
ancho y 9.6 pulgadas de alto, esto deja colocar 1 slot AGP, 2 PCI, 1 PCI o ISA y 3 slots ISA, también
existe la versión mini-ATX que tiene un tamaño de pulgadas por 9.6 de largo lo que permite colocar
1 slot AGP, 2 PCI, 1 PCI o ISA. Debido a que una ATX es esencialmente una baby AT girada 90
grados, este giro permite actualizar fácilmente el microprocesador, sin tener que quitar ninguna
tarjeta, el ventilador de la fuente de alimentación queda cerca del microprocesador y permite un
mejor enfriamiento. Entre sus características y beneficios principales se puede mencionar. Doble
alto flexible panel de entrada/salida que permite alta integración. Sistemas de bajo costo, Pocos
cables, Mejora la confiabilidad, Menor tiempo de ensamblado, Soporte para conectividad y estándar
I/O, tal como USB, TV in/out, ISDN, etc. ,Permite integrar gráficos y uso de frame buffer architecture.
NLX: Aparece en1997 diseñado por Intel en colaboración por IBM, es un diseño
nuevo de tarjeta madre que incluye:
Soporte para las nuevas tecnologías tales como AGP, USB
Las mejoras y ventajas del ATX los conectores del puerto serie, paralelo, teclado,
ratón etc. están colocados en la parte posterior de la tarjeta madre.
Permitir fácil acceso a los componentes.
Está diseñado para facilitar el mantenimiento típicamente de 8.8 por 13 pulgadas.
Tiene un conector tipo Riser en el lateral de la Placa Base donde se conecta una
tarjeta con los slots de expansión. De esta forma las tarjetas quedan paralelas a la Placa Base
49
2. Funcionamiento y
Organización del Computador
50
2. Funcionamiento y
Organización del Computador
51
2. Funcionamiento y
Organización del Computador
Puerto Paralelo Puerto de Juegos
Conector PS/2
ratón
Conectores
de Audio
52
2. Funcionamiento y
Organización del Computador
Conector para CD-
ROM o DVD
Conector para
Disco Duro Conector para
Disquete
Conectores y puertos.
53
2. Funcionamiento y
Organización del Computador
Chipset de VIA
Chipset Intel
Chipset de Sis
Chipset.
54
2. Funcionamiento y
Organización del Computador
Ranura
AGP
Ranura
CNR
Ranura PCI
Ranuras de expansión.
Ranuras de Expansión PCI y AGP: las tarjetas madres permiten que el computador pueda
ampliarse si es así lo requerido en un momento, ya que contienen slots o ranuras de expansión. Hay
que fijarse en cuatro tipos de ranuras de expansión en las tarjetas: AGP, PCI, ISA-16 y CNR.
55
2. Funcionamiento y
Organización del Computador
Conectores
Sata
Otras características especiales de las tarjetas madres modernas tienen que ver con otras
prestaciones que hacen de los computadores máquinas mucho más poderosas y flexibles. A
algunas se les puede conectar más de un procesador, como se ve en la figura la placa posee dos
zócalos y se puede conectar en ella dos microprocesadores. Estas placas madres son destinadas a
servidores para red. Hay otras Tajetas madre que possen puertos FireWire. Es común también que
los fabricantes coloquen conectores para discos duros tipo S-ATA (IDE serial) y existen tarjetas
capaces de manejar sus discos duros en configuraciones redundantes, conocidas como RAID
(común en servidores empresariales). Todas estas características es de esperarse que los haga
mucho más costosos, ya que es tecnología que aumentan notablemente el rendimiento de los
equipos.
56
2. Funcionamiento y
Organización del Computador
57
2. Funcionamiento y
Organización del Computador
Bus PCI “Interconexión de componente periférico”
Ancho de banda elevado.
Independiente del procesador.
Se puede utilizar como bus de periféricos o bus
Para arquitectura de entreplanta.
Proporciona mejores prestaciones para los
subsistemas de E/S de alta
velocidad(adaptadores de pantalla gráfica, los
controladores de interfaz de red, los
controladores de disco).
58
2. Funcionamiento y
Organización del Computador
Ranura
AGP
Ranura
CNR
Ranura PCI
Ranuras PCI.
59
2. Funcionamiento y
Organización del Computador
Elementos para el funcionamiento básico de la tarjeta
madre.
Tarjeta Madre
Importancia de la Memoria
Desde los primeros computadores personales que se usa memoria interna. Son
elementos indispensables para que funcione el sistema y se produzca el
procesamiento de datos. Un PC puede funcionar aunque no tenga tarjeta de
sonido, lector de CD-ROM, incluso sin disco duro. Para que la tarjeta madre pueda
trabajar en forma básica (además de los voltajes de alimentación) requiere de
procesador, memoria, tarjeta de video y teclado.
Haciendo un poco de historia, cuando IBM lanzó al mercado su PC-XT utilizó
memoria que consistía en numerosos circuitos integrados, cada uno de los cuales
se ponía en un zócalo insertdo en la tarjeta madre con una capacidad cada chip de
entre 16 y 256 kilobits ( de 2 a 32 KB) para reunir la máxima cantidad de RAM que
manejaba el PC-XT (640 KB), era necesario colocar aprox. 24 chips individuales.
Con la plataforma AT, surgió la opción de colocar hasta 16 MB de RAM. Entonces
en vez de usar chip individuales se unieron todos y se pusieron en módulos de
memoria, los SIP “empaque de hilera sencilla”. Con el uso de estos módulos de
memoria, los chips de RAM se soldaron en una pequeña tarjeta de circuito impreso
con un peine de 30 terminales. Estos módulos sólo podían manejar una palabra de
8 bits. Como el 286 ya tenía un bus externo de 16 bits, era necesario colocar los
módulos en parejas idénticas.
60
3. Memoria
Chips individuales.
SIMM de 30 terminales.
SIMMs
Con los procesadores tipo 386, que manejaba palabras de 32 bits, la cantidad de memoria RAM
típica era de entre 4 y 8 MB. Ya no era razonable utilizar módulos de 256 KB de RAM. Debido a que
los SIP se dañaban fácilmente al insertarlos en los zócalos, en los equipos nuevos se utilizó otro tipo
de módulo: el SIMM, idéntico al SIP, manejaba palabras de 8 bits, pero no tenía la hilera de
terminales. Se creó un nuevo conector que lo aceptara. Vea la segunda figura. Miden unos 8,5 cm
(30 c.) ó 10,5 cm (72 c.) y sus zócalos suelen ser de color blanco.
El SIMM tenía una capacidad de entre 1 y 4 MB. Un sistema tipico de computadores tipo 386, traía 4
MB de RAM, por ello, era necesario colocar cuatro módulos de 1 MB.
Luego surgió otro módulo de memoria RAM, el SIMM de 72 terminales o pines, podía manejar
palabras de 32 bits. Entonces era posible colocar un solo módulo de RAM. Venían con capacidad de
4, 8, 16 y hasta 32 MB. Como a las tarjetas madres se colocaban normalmente cuatro ranuras para
la memoria RAM, a un sistema 486 se le podía colocar un máximo de 128 MB.
61
3. Memoria
DIMMs
Con la aparición de los buses externos de 64 bits, la memoria tuvo que
transformarse para poder manejar tal cantidad de bits, aparecen los módulos tipo
DIMM, o módulos de memoria de hilera doble. Estos módulos cuentan con 168
terminales y trabajan directamente con palabras de 64 bits. La forma más común
de instalar memoria en un sistema es un DIMM. Los DIMMs son más alargados
(unos 13 cm), y se insertan en zócalos generalmente negros; llevan dos muescas
para facilitar su correcta colocación. Ppueden usarse de 1 en 1 en los Pentium, K6
y superiores. Existen para voltaje estándar (5 voltios) o reducido (3.3 V).
62
3. Memoria
63
3. Memoria
64
3. Memoria
• Tipos de memorias
RAM ROM
Memoria de Acceso Aleatorio Memoria de Sólo Lectura
65
3. Memoria
BIOS
BIOS: Tradicionalmente la BIOS venía en una memoria de solo lectura; por eso era
muy difícil modificarla, en caso de que apareciera una actualización. Pero en
tarjetas madres más modernas, la BIOS viene en una memoria tipo Flash y ésta
puede actualizarse.
Los dos principales fabricantes de BIOS son AMI (American Megatrends Inc.) y
Phoenix (que también maneja las BIOS Award).
En la BIOS se aloja el SETUP, utilería que permite configurar y optimizar el
sistema.
66
3. Memoria
Tipos de
Memorias
RAM
RAM
RAM Estática o dinámica o
SRAM DRAM
Flip-flop Condensador
•RAM Estática o SRAM: esta clase de memoria no necesita refresco de datos como la RAM
dinámica. Cada una de las celdas está constituida por un flip-flop, que permanece indefinidamente
en un estado, mientras no se elimine su alimentación. Esto permite que los datos permanezcan
almacenados mientras el circuito tenga alimentación de voltaje. Debido a que no necesita refresco,
la SRAM es mucho más rápida ya que el microprocesador siempre la encuentra disponible para
lectura o escritura de datos. Por su rapidez es ampliamente utilizada en los computadores como
memoria intermedia (memoria caché) entre las unidades de almacenamiento y el microprocesador.
Por su tecnología, la memoria estática es de alto costo por lo que generalmente no es utilizada en
grandes cantidades dentro del computador, además consume más potencia.
•RAM Dinámica o DRAM: este tipo de memoria exije que cada cierta cantidad de tiempo se haga
refresco de los datos, es decir, periódicamente se le debe recordar o regrabar la información que
está almacenada. Esta operación la ejecuta automáticamente el controlador de memoria de la tarjeta
principal. El refresco se hace necesario debido a que cada bit de información está guardado en un
pequeño condensador o capacitor, que indica el estado lógico almacenado (1 ó 0) a través de la
carga de voltaje que posea. En este tipo de memorias la carga del condensador, lo cual indica que el
bit de información corresponde a un 1 lógico, tiende a desaparecer, si se deja pasar cierto tiempo sin
renovarla. Para evitar esto, el controlador de memoria de la tarjeta principal está programado para
hacer una recarga o refresco del voltaje de los condensadores justo antes de que la información se
pierda por completo, con lo cual, el dato permanecerá almacenado en la memoria durante otro
pequeño período de tiempo hasta el siguiente ciclo de refresco. Mientras el sistema se encuentra
haciendo el refresco a la memoria, el microprocesador no tiene acceso a los datos y debe esperar a
que termine la operación. Por esto, este tipo de memoria es más lenta que la RAM estática, pero
consume menos potencia. Las RAM dinámicas son más densas(celdas más pequeñas, es decir,
más celdas por unidad de superficie). Usada hasta la época del 386, su velocidad típica es de 80 ó
70 nanosegundos (ns), tiempo éste que tarda en vaciarse para poder dar entrada a la siguiente serie
de datos. Por ello, es más rápida la de 70 ns que la de 80 ns.
•Físicamente, aparece en forma de DIMMs o de SIMMs, siendo estos últimos de 30 contactos.
67
3. Memoria
•EDO RAM (Extended Data Output-RAM: es otro tipo de RAM dinámica. Tiene menor tiempo de
acceso debido a que los datos permanecen almacenados durante mayor tiempo antes del nuevo
ciclo de refresco. Con esta memoria se puede empezar a introducir nuevos datos mientras los
anteriores están saliendo (haciendo su Output), lo que la hace algo más rápida (un 5%, más o
menos). Es muy común en los Pentium MMX y AMD K6, con velocidad de 70, 60 ó 50 ns. Se instala
sobre todo en SIMMs de 72 contactos, aunque existe en forma de DIMMs de 168.
•SDRAM (Syncronous DRAM): Con la salida al mercado de procesadores de gran velocidad, las
memorias DRAM y EDO, se volvieron un “cuello de botella". La memoria más eficiente es la que
funciona a la misma velocidad que el microprocesador. Las memorias EDO DRAM funcionan a 60,
70 y 80 ns (nano segundos) y eran suficientemente rápidas para alcanzar a los procesadores de 66
MHz, pero éstos procesadores ya son obsoletos. Por éste motivo se desarrolló el estándar
Syncronous DRAM o DRAM Síncrona.
SDRAM recibe y emite información sincronizada a un reloj externo. El uso de un reloj permite que
las SDRAM sean extremadamente más rápidas para leer y escribir. Funciona de manera
sincronizada con la velocidad de la placa (de 50 a 66 MHz), para lo que debe ser rapidísima, de
unos 25 a 10 ns. Las memorias SDRAM se miden de acuerdo a la velocidad del reloj externo, por
eso se mide su velocidad en MHz.
Sólo se presenta en forma de DIMMs de 168 contactos; es usada en los Pentium II de menos de 350
MHz y en los Celeron
Las PC100 o SDRAM de 100 MHz son memorias capaces de funcionar a esos 100 MHz, que utilizan
los AMD K6-2, Pentium II a 350 MHz y computadores más modernos; teóricamente se trata de unas
especificaciones mínimas que se deben cumplir para funcionar correctamente a dicha velocidad,
aunque no todas las memorias vendidas como "de 100 MHz" las cumplen.
Las PC133: o SDRAM de 133 MHz. La más moderna (y recomendable).
68
3. Memoria
DDR-SDRAM: (Doble Data Rate): son una evolución de los SDRAM, la tecnología avanza, y la
SDRAM, incluso en su versión PC133, ya no está a la altura de micros cuya velocidad se mide ya en
GHz. La DDR-SDRAM, puede realizar dos operaciones de lectura o escritura por cada pulso de
reloj, ya que envía los datos 2 veces por cada señal de reloj, una vez en cada extremo de la señal (el
ascendente y el descendente), en lugar de enviar datos sólo en la parte ascendente de la señal, y a
diferencia de la SDRAM, trabaja a doble velocidad de transferencia de datos. Se utilizaba en tarjetas
gráficas y la estandarización ha permitido que numerosos fabricantes de Placas Base y de
procesadores la hayan elegido en lugar de la más cara RIMM. Sus velocidades estándar varían
entre 200 y 400 Mhz. Según esta velocidad existen diferentes denominaciones para la DDR
SDRAM:
-PC1600, corresponde a la DDR SDRAM a 200 Mhz.
-PC2100, corresponde a la DDR SDRAM a 266 Mhz.
-PC2700, corresponde a la DDR SDRAM a 333 Mhz.
-PC3200, corresponde a la DDR SDRAM a 400 Mhz.
Dependiendo del fabricante existen DDR SDRAM con denominaciones y velocidades superiores,
entre las que destacan:
-PC3500, corresponde a la DDR SDRAM a 433 Mhz.
- PC3700, corresponde a la DDR SDRAM a 466 Mhz.
- PC4000, corresponde a la DDR SDRAM a 500 Mhz.
-Los módulos de las DDR-SDRAM son del mismo tamaño que los DIMM de SDRAM, pero con más
conectores, tiene 184 pines en lugar de los 168 de la SDRAM normal. Así, un aparato con tecnología
DDR que funcione con una señal de reloj "real", "física", de por ejemplo 100 MHz, enviará tantos
datos como otro sin tecnología DDR que funcione a 200 MHz. Por ello, las velocidades de reloj de
los aparatos DDR se suelen dar en lo que podríamos llamar MHz efectivos o equivalentes (en
nuestro ejemplo, 200 MHz, "100 MHz x 2"). La tecnología DDR está de moda últimamente. Además
de las numerosísimas tarjetas gráficas con memoria de vídeo DDR-SDRAM, se tiene por ejemplo los
microprocesadores AMD Athlon y Duron, cuyo bus de 200 MHz realmente es de "100 x 2", "100 MHz
con doble aprovechamiento de señal"
69
3. Memoria
70
3. Memoria
Memoria
DDR-SDRAM
71
3. Memoria
72
3. Memoria
Tipos de
Memorias ROM
73
3. Memoria
• Memoria caché
9 Características
Dispositivo pequeño de memoria de alta
velocidad que interviene entre el procesador
y la DRAM.
La caché tiene como propósito suministrarle
al procesador las instrucciones y datos
solicitados con mayor frecuencia.
Su objetivo es lograr que la velocidad de la
memoria sea lo más rápida posible.
Está ubicada muy cerca del CPU.
Su tamaño típico es de 8 KB y 512 KB.
Arquitectura de Computadores y Sistema Operativo
Memoria Caché:
La arquitectura de los últimos microprocesadores está orientada a mejorar el rendimiento, de
manera que se ejecuten más instrucciones por unidad de tiempo.
Para llevarlo a cabo los nuevos microprocesadores se apoyan en tres recursos.
•Arquitectura superescalar: características de la arquitectura RISC, paralelismo explícito.
•Supersegmentación: segmentación con elevado número de etapas.
•Potenciación del subsistema de la memoria caché: para aumentar la velocidad de la memoria.
Una limitación en el diseño de computadores es la velocidad de los distintos dispositivos conectados
al procesador, en particular la velocidad de la memoria física. El procesador puede tener una
frecuencia de reloj muy elevada, que le permite ejecutar gran número de instrucciones por ciclo, las
velocidades de las memorias, de los buses de datos, de los periféricos, etc. hace que el procesador
tenga que esperar a tener disponibles los datos necesarios para seguir operando.
Memoria caché o conocida como RAM caché. Es un dispositivo pequeño de memoria de alta
velocidad que interviene entre la CPU y la DRAM. La memoria caché tiene como propósito
suministrarle al procesador las instrucciones y datos solicitados con mayor frecuencia. La memoria
caché puede ser de tres a cinco veces más veloz que la DRAM.
La memoria Caché tiene como objetivo lograr que la velocidad de la memoria sea lo más rápida
posible, consiguiendo al mismo tiempo un tamaño grande al precio de memorias semiconductoras
menos costosas.
La emoria caché reside muy cerca de la CPU y tiene un tamaño típico entre 8 KB y 512 KB. Los
tiempos de acceso de las memorias caché se encuentran entre los 3 y 10 ns aprox..
74
3. Memoria
Tranferencia de bloques
Tranferencia de palabras
Memoria
CPU Caché Principal
Memoria Caché.
75
3. Memoria
9 Niveles de Jerarquía
Caché de nivel 1, caché L1 o caché primaria
Caché integrada en la CPU. Es la memoria
más rápida de un computador, suele funcionar
a la misma velocidad que el microprocesador,
Es de poco tamaño.
Niveles de jerarquía:
Para mejorar el rendimiento se emplea la jerarquía de memoria, utilizando cachés de primer nivel,
segundo nivel que se denominan caché L1, caché L2, etc., respectivamente.
Caché de nivel 1, caché L1, caché primaria:
Es una memoria caché integrada en la CPU. Es la memoria más rápida de un computador, suele
funcionar a la misma velocidad que el microprocesador, por lo general es de poco tamaño. Se utiliza
desde el microprocesador Intel 80846, que incorporaba 8 KB.
76
3. Memoria
9 Niveles de Jerarquía
Caché de nivel 2, caché L2 o caché
secundaria
Más lenta que la L1 y de mayor tamaño.
Almacenar los datos e instrucciones muy
usados recientemente, pero que no han sido
guardados por la caché L1.
Está integrada tanto en la placa madre como
en la CPU.
77
3. Memoria
9 Niveles de Jerarquía
Caché de nivel 3, caché L3
En el Itanium, la jerarquía de niveles ya llega a
tres, para lo cual se destinan 300 millones de
transistores para los niveles de caché y 25
millones de transistores para la CPU.
78
4. Entrada/Salida
79
4. Entrada/Salida
• Módulos de Entrada/Salida
Funciones Mó
Módulo E/S
80
4. Entrada/Salida
• Problemas con Entrada/Salida
9 Amplia variedad de periféricos.
Entregan distintas volúmenes de datos.
A velocidades de transferencia diferentes.
En diferentes formatos.
9 Son más lentos que la CPU y la Memoria.
9 Necesitan módulos.
81
4. Entrada/Salida
• Modelo genérico de un módulo E/S
Líneas de dirección
Bus del
Líneas de Control Sistema
Líneas de Datos
Módulo de E/S
Enlaces con
dispositivos
periféricos
82
4. Entrada/Salida
• Dispositivos externos
9 Interacción con humanos.
Pantalla, Impresora, teclado.
9 Interacción con máquinas.
Monitoreo y control.
9 Comunicación.
Módem
Tarjeta de red, Network Interface card
(NIC)
83
4. Entrada/Salida
• Pasos de módulo E/S
9 CPU chequea el estado del dispositivo
conectado al módulo E/S.
9 El módulo E/S retorna el estado.
9 Si está listo, CPU solicita la transferencia
de datos.
9 El módulo E/S obtiene el dato del
dispositivo.
9 El módulo E/S transfiere los datos a la
CPU.
84
4. Entrada/Salida
• Función del módulo E/S
9 Control y Temporización.
9 Comunicación con la CPU.
9 Comunicación con los
dispositivos.
9 Almacenamiento temporal de
datos.
9 Detección de errores.
85
4. Entrada/Salida
• Diagrama de bloque de un módulo de E/S
Interfaz al Bus del
Sistema Interfaz a Disp. Externo
Lógica de Datos
Registro de datos interfaz
Líneas a Estado
de dispositivo
Datos Registro de externo Control
Estado/Control
Datos
Lógica de
Líneas de Dirección . interfaz Estado
Lógica de a
E/S dispositivo Control
Líneas de Control externo
86
4. Entrada/Salida
• Técnicas de Entrada/Salida
9 Programada.
9 Mediante Interrupciones.
9 Acceso Directo a Memoria (DMA).
87
4. Entrada/Salida
• E/S programada
9 CPU tiene control directo sobre E/S.
Chequea los estados.
Controla Lectura/Escritura.
Transferencia de datos.
88
4. Entrada/Salida
• E/S programada Mandar orden de lectura
CPU E/S
al Módulo de E/S
.
Leer el estado del
E/S CPU
Módulo E/S
No preparado
Comprobar Condición
el estado de error
Preparado
No
¿Final?
Sí Instrucción siguiente
Arquitectura de Computadores y Sistema Operativo
89
4. Entrada/Salida
• E/S programada detalle
9 CPU solicita una operación de E/S.
9 El módulo de E/S realiza la operación.
9 El módulo de E/S “setea” los bits de
“status”.
9 CPU chequea los bits de estado
periódicamente.
90
4. Entrada/Salida
• E/S programada detalle
9 El módulo de E/S no informa a CPU
directamente.
9 El módulo de E/S no interrumpe a la
CPU.
9 CPU puede esperar o solicitar más tarde.
91
4. Entrada/Salida
• E/S programada órdenes de E/S
9 CPU proporciona una dirección
Especifica el módulo.
9 CPU especifica órdenes.
Control- indican al módulo qué debe
hacer.
Test-chequea el estado.
Lectura/Escritura.
92
4. Entrada/Salida
• E/S programada correspondencia E/S
9 E/S asignado en memoria.
Dispositivos y la memoria comparten un espacio
de direcciones.
E/S se asemeja a una operación de
Lectura/Escritura de memoria.
No existen órdenes especiales para E/S. Hay
disponible una gran cantidad de comandos de
acceso a memoria.
En la E/S programada, hay una estrecha correspondencia entre las instrucciones de E/S que
el procesador capta de memoria y las órdenes de E/S que la CPU envía a un módulo de E/S al ejecutar las
instrucciones. Es decir, las instrucciones se pueden hacer corresponder fácilmente con las órdenes de E/S, y a
menudo hay una simple relación uno a uno. La forma de la instrucción depende de la manera de direccionar los
dispositivos externos.
Cuando el procesador, la memoria principal y las E/S comparten un bus común, son posibles
dos modos de direccionamiento: asignado en memoria y aislado. Con las E/S asignadas en memoria, existe un
único espacio de direcciones para las posiciones de memoria y los dispositivos de E/S. La CPU considera los
registros de estado y de datos de los módulos de E/S como posiciones de memoria, y usa las mismas
instrucciones máquina para acceder tanto a memoria como a los dispositivos de E/S. Ejemplo, con 10 líneas de
dirección se puede acceder a un total de 1024 posiciones de memoria y direcciones de E/S, en cualquier
combinación.
Con las E/S asignadas en memoria, se necesita una sola línea de lectura y una sola línea de
escritura en el bus. Aternativamente, el bus puede disponer de líneas de lectura y escritura en memoria junto
con líneas para órdenes de entrada y salida. En este caso, las líneas de órdenes especifican si la dirección se
refiere a una posición de memoria o a un dispositivo de E/S. El rango completo de direcciones está disponible
para ambos. De nuevo, con 10 líneas de dirección, el sistema puede soportar ahora 1024 posiciones de
memoria y 1024 direcciones de E/S. Puesto que el espacio de direcciones de E/S está aislado del de memoria,
éste se conoce con el nombre de E/S aislada.
93
4. Entrada/Salida
• E/S programada correspondencia E/S
9 E/S aislada
Espacios de direcciones separadas.
Necesidad de E/S o de líneas de memoria.
Existen comandos especiales para E/S. Conjunto
limitado.
Con E/S aislada, los puertos de E/S sólo son accesibles mediante una orden específica de E/S, que activa las
líneas de órdenes de E/S del bus.
La mayor parte de los procesadores disponen de un conjunto relativamente grande de
instrucciones distintas para acceder a memoria. Si se utiliza E/S aislada, sólo existen unas pocas instrucciones
de E/S. Por eso, una ventaja de la E/S asignada en memoria es que se puede utilizar este amplio repertorio de
instrucciones, permitiendo una programación más efieciente. Una desventaja es que se usa parte del valioso
espacio de direcciones de memoria. Tanto la E/S asignada en memoria como la aislada se usan comúnmente.
94
4. Entrada/Salida
• E/S mediante interrupción
9 Evita las esperas realizadas por la CPU.
9 La CPU no realiza chequeos repetitivos
del estado de cada dispositivo.
9 Un módulo de E/S realiza una interrupción
cuando está listo.
95
4. Entrada/Salida
• E/S mediante Mandar orden de lectura CPU I/O
al Módulo de E/S Hacer otra cosa
interrupciones .
Leer el estado del Interrupción
Módulo E/S E/S CPU
Comprobar Condición
el estado de error
Preparado
No
¿Final?
Sí Instrucción siguiente
Arquitectura de Computadores y Sistema Operativo
96
4. Entrada/Salida
• E/S mediante interrupciones operación básica
9 CPU envía una orden de E/S.
9 El módulo E/S obtiene datos desde un
periférico mientras la CPU realiza otro
trabajo.
9 El módulo E/S interrumpe a la CPU.
9 CPU solicita los datos.
9 El módulo E/S transfiere los datos.
¿Cómo funciona?
Desde el punto de vista del módulo de E/S.
Para una entrada, el módulo de E/S recibe una orden READ del
procesador. El módulo de E/S, procede a leer el dato desde el periférico asociado.
Una vez que el dato está en el registro de datos del módulo, éste envía una
interrupcón al procesador a través de una línea de control. Después el módulo
espera hasta que el procesador solicite su dato. Cuando ha recibido la solicitud, el
módulo sitúa su dato en el bus de datos y pasa a estar preparado para otra
operación de E/S.
97
4. Entrada/Salida
• E/S Mediante interrupciones perspectiva de la
CPU
9 CPU envía una orden READ de lectura.
9 Pasa a realizar otro trabajo.
9 Chequea en busca de interrupciones al
final de cada ciclo de instrucción.
9 Si es interrumpida:
Guarda el contexto (registros)
Procesa la interrupción, capta datos y los
almacena.
98
4. Entrada/Salida
• E/S mediante interrupciones identificación del
módulo que realiza la interrupción(1)
9 Múltiples líneas de interrupción.
PC
Limitado al número de dispositivos
9 Consulta software (Software polling).
CPU consulta o pregunta a cada
módulo
Lento
99
4. Entrada/Salida
• E/S mediante interrupciones identificación del
módulo que realiza la interrupción(2)
9 Conexión en cadena o Hardware
polling.
Reconocimiento de interrupción es enviado al
final de la cadena.
El módulo es responsable de colocar un
vector en el bus
CPU usa un vector para identificar la rutina
de servicio
100
4. Entrada/Salida
• E/S mediante interrupciones identificación del
módulo que realiza la interrupción(2)
9 Arbitraje de Bus
El módulo debe pedir el bus antes de que pueda
liberar la interrupción
Ejemplo PCI&SCSI
101
4. Entrada/Salida
• Acceso directo a memoria (DMA)
9 Tanto la E/S Programada como la E/S
Mediante Interrupciones requieren la
intervención activa de la CPU.
La transferencia de datos está
limitada.
CPU está “atada”.
9 DMA ofrece una respuesta.
102
4. Entrada/Salida
• Acceso directo a memoria
Interrupción
Leer el estado del
Módulo DMA
DMA CPU
Instrucción siguiente
103
4. Entrada/Salida
• Acceso directo a memoria operación DMA
9 CPU indica al módulo de DMA:
Lectura/Escritura.
Dirección del dispositivo.
Posición inicial de memoria a partir de donde se
lee o escribe.
Cantidad de datos a ser transferidos”.
104
4. Entrada/Salida
• Acceso directo a memoria operación DMA
9 CPU continúa con otro trabajo.
9 El módulo de DMA continúa con la
transferencia.
9 El módulo de DMA envía interrumpe al
terminar.
105
4. Entrada/Salida
• Acceso directo a memoria transferencia de DMA
“Robo de Ciclo”
9 El módulo DMA controla al bus durante un
ciclo.
9 Ocurre la transferencia de una palabra de
datos.
9 No ocurre una interrupción.
CPU no altera el “contexto”
106
4. Entrada/Salida
• Acceso directo a memoria transferencia de DMA
“Robo de Ciclo”
9 La CPU es suspendida antes de acceder al
bus.
Antes de captar de un dato u operando o de
alguna escritura.
107
5.1 Máquina de Princeton y Máquina de
Harvard
108
5.1 Máquina de Princeton y
Máquina de Harvard
• Máquina de Von Neumann
Bus Común
de
Direcciones MEMORIA
Instrucciones
8
CPU +
datos
Bus de Datos e
Instrucciones
109
5.1 Máquina de Princeton y
Máquina de Harvard
• Máquina de Von Neumann
Unidad de Entrada
Control
Memoria
RAM
Salida
ALU
Bloques Funcionales.
Las unidades funcionales de los computadores actuales tienen los mismos bloques
que los diseñados por Neumann; a esos bloques ahora se les llama BLOQUES
FUNCIONALES tal como se esquematiza en la figura
110
5.1 Máquina de Princeton y
Máquina de Harvard
• Máquina de Von Neumann
Unidad de Control Memoria E/S
Señales de control
MAR Control Periférco
E/S
Circuito de control Periférco
Cálculos de .
Memoria .
IR .
MB
Periférco
ALU
Registros
Circuito Aritméticos Detalle de las Unidades
y lógicos Funcionales.
La figura presenta con más detalle la estructura interna de cada una de las
unidades funcionales:
Los registros más importantes son:
•Contador de Programa (PC).
•Registro de Instrucción (IR).
•Los registros para el uso del programador: que se han ubicado en la ALU y que
puede tener diferentes estructuras según cual sea la organización interna del
procesador.
•El registro de dirección de memoria (MAR).
•El Buffer de memoria MB o MDR.
111
5.1 Máquina de Princeton y
Máquina de Harvard
• Máquina de Harvard
CPU 512 x 8
1 K x 14
14 8
Bus de Bus de
Instrucciones
Datos
Visión general de la Arquitectura Harvard.
Máquinas de Harvard
En la arquitectura de Harvard son independientes la memoria de instrucciones y la
memoria de datos. Teniendo cada una de estas memorias su propio sistema de buses para el
acceso.
El disponer de dos memorias independientes propicia el paralelismo, lo cual permite que se acceda
en forma simultánea a datos y a instruciones, permite además la adecuación del tamaño de las
palabras y los buses a los requerimientos específicos de las instrucciones y de los datos. Además la
capacidad de las memorias es diferente.
La figura muestra un procesador conectado a dos memoria, la memoria de instrucciones de 1 K
posiciones de 14 bits cada una, la memoria de datos sólo dispone de 512 posiciones de un byte.
El alto rendimiento y elevada velocidad que alcanzan los procesadores modernos, como es el
caso de los microcontroladores PIC, se debe a la utilización en conjunto de
•Arquitectura Harvard
•Arquitectura RISC y
•Segmentación.
112
5.1 Máquina de Princeton y
Máquina de Harvard
Arquitectura Arquitectura
V/S
Von Neumann Harvard
¾Los datos e ¾Datos e instrucciones
instrucciones en una se en memorias
sola memoria de separadas.
lectura/escritura.
¾Se acceden
¾La memoria se simultáneamente datos e
direcciona indicando su instrucciones.
posición.
¾Es más costosa porque
¾La ejecución se hace se necesitan dos
instrucción tras memorias.
instrucción.
113
5.2 Procesadores y Controladores
Procesadores
Básicamente existen dos tipos de estructura de procesador, que constituyen hoy en día la diversidad
de chips en el mercado (el caso más claro y con más éxito es el de AMD e Intel).
De una parte tenemos microprocesadores RISC los cuales se basan en instrucciones simples y por
lo tanto la complejidad total de la CPU es menor. Algunos ejemplos son:
Power PC
Motorola
SPARC, la mayoría son utilizados en empresas por su rendimiento y fiabilidad.
Comparación
Cuando se ejecuta un programa difícil, o extenso, los CISC son más rápidos y eficaces que los
RISC. En cambio cuando tenemos en ejecución un conjunto de instrucciones sencillas, cortas y
simples, tenemos que los RISC son más rápidos. Estas desigualdades también se dan entre los
diferentes modelos y marcas de los dos tipos de procesadores.
114
5.2 Procesadores y Controladores
• Evolución tecnológica de los procesadores
115
5.2 Procesadores y Controladores
• Evolución tecnológica de los procesadores
116
5.2 Procesadores y Controladores
• Estructura de los procesadores
9 Unidad de Control.
9 ALU (Unidad Aritmético Lógica).
9 Registros.
9 Interconexiones CPU.
117
5.2 Procesadores y Controladores
• Arquitectura básica de los procesadores
Microprocesadores
Arquitectura Von
Arquitectura Harvard
Neumann
Arquitectura básica
Según la arquitectura básica el procesador puede seguir las especificaciones de
Von Neumann o Harvard.
118
5.2 Procesadores y Controladores
• Tipos de arquitectura
Microprocesadores
CISC RISC
Tipos de arquitectura
Una de las primeras decisiones a la hora de diseñar un procesador es
decidir
cual será su juego de instrucciones. Este conjunto de instrucciones
(órdenes)
es el lenguaje que realmente entiende el procesador, y constituye lo que se
conoce como lenguaje ensamblador o lenguaje-máquina. La decisión es
trascendente, por dos razones.
1. El juego de instrucciones decide el diseño físico del conjunto.
2. Cualquier operación que deba ejecutarse con el procesador deberá
poder ser descrita en términos de este "lenguaje" elemental (los
compiladores e intérpretes son en realidad traductores desde el
lenguaje de alto nivel (fuente) a este lenguaje-máquina). Frente a esto
hay dos filosofías de diseño. La primera conduce a máquinas
denominadas CISC ("Complex Instruction Set Computer"); las
máquinas construidas según el otro criterio se denominan RISC
("Reduced Instruction Set Computer").
119
5.2 Procesadores y Controladores
• Tipos de arquitectura
CISC RISC
Utiliza instrucciones Utiliza instrucciones
muy complejas muy simples
Las máquinas CISC utilizan instrucciones muy complejas, muy descriptivas y específicas,
lo que se traduce en varias consecuencias:
•El lenguaje debe contener un amplio surtido de ellas (una para cada circunstancia
distinta).
•Son instrucciones complejas, por tanto de ejecución lenta. La circuitería del procesador
también es compleja.
•Para un trabajo específico se requieren pocas instrucciones (siempre hay una que
resuelve el problema).
•Las máquinas RISC representan el enfoque opuesto. Utilizan instrucciones muy simples,
que deben ser cuidadosamente escogidas, porque cualquier operación debe ser
expresada como una secuencia de estas pocas instrucciones. Las consecuencias son
justamente opuestas a las anteriores:
•El lenguaje contiene un conjunto pequeño de instrucciones.
•Las instrucciones son muy simples, por tanto de ejecución rápida. La circuitería es más
simple que en los procesadores CISC.
•Para cualquier operación se requieren varias instrucciones elementales.
Cada criterio tiene sus pros y sus contra en lo que a rendimiento se refiere. En las
máquinas CISC, lentitud de cada instrucción frente a poca cantidad de ellas; en las RISC,
rapidez individual aunque hay que ejecutar un mayor número.
La diferencia práctica entre CISC y RISC es que los procesadores CISCx86 corren a DOS,
Windows 3.1 y Windows 95 en el modo nativo, es decir, sin la traducción de software que
disminuya el desempeño
120
5.2 Procesadores y Controladores
• Características distintivas entre procesadores
9 Tamaño o Anchura de los Buses
Características distintivas
Existen varias características diferenciadoras de los procesadores. Dos de los
parámetros importantes en cuanto a especificación son la anchura y velocidad.
9 Tamaño o anchura de los buses.
La forma más común de describir un microprocesador es indicando la velocidad y el ancho de su
bus externo de datos. Esto determina la capacidad que tiene el procesador de enviar y recibir
información. Volviendo al ejemplo de las autopistas, si una autopista tiene un carril por cada
sentido, un auto puede pasar en una dirección. Suponiendo que un chip de 8 bits es una
autopista de un solo carril, un solo byte circula por ella a la vez, en un chip de 16 bits dos bytes
pueden circular, en una de 32 bits, 4 y una de 64, 8 bytes de una sola pasada.
-Los registros internos (bus de datos interno): El tamaño de los registros internos indica la
cantidad de información sobre la cual puede operar el procesador al mismo tiempo, además
determina cómo transfiere los datos dentro del chip.
(8088 16; 80386 y siguientes 32 bits). Vea la figura.
Anchura del bus de datos (8088 8; 80286 16; 80486 32; Pentium 64 bits) Vea la figura.
-Bus de direcciones: determina la capacidad de manejar memoria, como ya se ha visto en
clases anteriores, éste bus es el que transporta la información de direccionamiento usada para
describir la ubicación de memoria a la cual se está enviando información, o aquella de donde se
está obteniendo.
Anchura del bus de direcciones: (8088 20; 80286 24; 80486 32 y Pentium 32 bits).
121
5.2 Procesadores y Controladores
9 Tamaño o anchura de los buses
122
5.2 Procesadores y Controladores
9 Velocidad
Procesador Ciclos por
Instrucción
8086 y 8088 12
80486 2
9Velocidad
No Hay un estándar para medirla, uno de los pocos datos objetivos es la frecuencia a que
funciona y se mide en megaherz, mientras más rápido mejor, aunque existen otros muchos
factores, tales como el número de instrucciones que es capaz de ejecutar en cada ciclo
(arquitectura súper escalar), los juegos de instrucciones para aplicaciones específicas como la
tecnologías MMX, las extensiones SIMD o 3DNow, la ejecución dinámica, arquitectura de bus
independiente, etc.
-Tiempos medios por instrucción
8086 y 8088: Les toma un promedio de 12 ciclos para ejecutar una instrucción.
80286 y 80386: Un promedio de 4.5 ciclos por instrucción (el 80386 fue el primer procesador
de ordenador personal en implementar arquitectura de ejecución paralela).
80486: Media de 2 ciclos por instrucción.
Pentium y AMD serie K6: Incluyen canales dobles para instrucciones y otras mejoras que les
permiten una o 2 instrucciones por ciclo.
Pentium Pro, Pentium II en adelante, Celeron, Athlon y Duron: Pueden ejecutar por encima
de 3 instrucciones por ciclo de reloj. A partir del Intel 80486 los procesadores funcionan a una
velocidad mayor que lo que pueden hacer los circuitos y buses de la tarjeta madre (bus
externo). La situación actual es que las velocidades típicas de las tarjeta madre son de 60- 66-
100- 133 MHz mientras que los procesadores funcionan a frecuencias múltiplos de aquellas;
típicamente de 1x hasta 10x, es decir, desde 60 a 1330 MHz. Dado que el procesador está
conectado con el bus externo, es fácil comprender que en su interior existan buses que trabajan
a distintas velocidades. Para distinguirlos es frecuente referirse a la velocidad del bus más
rápido como velocidad del núcleo y a la del bus que conecta con el bus externo como
velocidad del bus frontal ("Front-side bus").
123
5.2 Procesadores y Controladores
9 Tecnología del procesador
MMX (MultiMedia Extensions) : Introducida por
Intel. Mejora la manipulación de imágenes y
tratamiento de codecs de audio/video.
124
5.2 Procesadores y Controladores
9 Tecnología del procesador
Arquitectura DIB: El procesador dispone de
dos buses exteriores que pueden funcionar
en forma simultánea e independientemente.El
principal es el que comunica con el bus de la
tarjeta madre (bus del sistema); el segundo
(bus de apoyo), comunica el procesador con
la cache L-2.
-Arquitectura DIB
La arquitectura de bus dual independiente DIB ("Dual Independent Bus") consiste en que el
procesador dispone de dos buses exteriores que pueden funcionar simultanea e
independientemente. El principal es el que comunica con el bus de la tarjeta madre (bus del
sistema); el segundo (bus de apoyo), comunica el procesador con la cache L-2.
Para sacar pleno rendimiento de este segundo bus, se sacó esta caché de la tarjeta madre y se la
acercó al procesador, permitiendo que funcionase a la misma velocidad que el núcleo (la caché L-1
siempre ha estado incluida en el procesador).
-Sobrecarga
La Sobrecarga ("Overclocking") consiste en aumentar la eficiencia del procesador aumentando su
velocidad de trabajo (frecuencia) por encima de la prevista por el fabricante.
Aspectos relativos al marcaje de la velocidad de los procesadores por los fabricantes; remarcado y
mercado negro de procesadores; limitación de la velocidad por el fabricante.
Nota:
La compañía Intel proporciona gratuitamente un software especial, denominado Processor
Frequency ID Utility http://support.intel.com/support/processors/tools/frequencyid/ que permite a
los usuarios determinar si un determinado procesador Intel está operando a la frecuencia
correcta. Además permite identificar el tipo de procesador utilizado en el sistema y algunas de sus
características como tipo y tamaño de caché; encapsulado y tecnología (MMX y SMID).
El programa existe en dos versiones. Una de ellas corre bajo Windows, la otra, denominada
"bootable", no necesita un Sistema Operativo instalado para correr; puede instalarse en un disquete
y arranca antes que el SO.
125
5.2 Procesadores y Controladores
9 Encapsulado del procesador
Existen varios tipos de encapsulado:
DIP "Dual In-line Package". El 8088 40 pines.
PGA Pin Grid Array". A partir de la introducción
del 80286. Existen muchas versiones: Socket
1, 169 pines; Socket 2, 238 p; Socket 3, etc.
SE "Single Edge".
Ranura 1 cartuchos SEC (Single Edge Card) y
SEP (Single Edge Connector) de 242 pines.
Ranura 2 con 330 pines. Servidores y sistemas
de altas prestaciones con Pentium Xeon.
9Encapsulados
Concepto: Relación con el tipo de zócalo. Existen varios tipos de encapsulado:
-DIP "Dual In-line Package". El 8088 estaba encapsulado en un DIP de 40 pines.
-PGA Pin Grid Array". Se utiliza a partir de la introducción de 80286 en 1.982. Existen muchas
versiones: Socket 1 169 (LIF, ZIF) pines; Socket 2, 238 (LIF, ZIF) p; Socket 3, 237 (LIF, ZIF) p;
Socket 4, 273 (LIF, ZIF) p; Socket 5, 296 (LIF, ZIF), 320 (LIF, ZIF) p; Socket 6, 235 (ZIF) p ; Socket
7, 296 (LIF) , 321 (ZIF) p y Socket 8, 387 (LIF, ZIF) p.
-SE "Single Edge".
Ranura 1(slot 1) cartuchos SEC (Single Edge Card) y SEP (Single Edge Connector) de 242 pines.
Ranura 2 (slot 2) con 330 pines. Servidores y sistemas de altas prestaciones con Pentium Xeon
Los Zócalos de patillas planas y torneadas; origen de los zócalos LIF y ZIF.
Se requieren unas 100 libras de fuerza para insertar un procesador de 169 pines en un zócalo estándar (unos
45 Kg).
Se diseñaron los zócalos LIF ("Low Insertion Force“, fuerza de inserción baja) que limitaban a 60 libras (unos
27 Kg), y los ZIF ("Zero Insertion Force“) que no requieren ninguna fuerza para su inserción o retirada. Los
zócalos VLIF (“Very Low Insertion Force”) requieren una muy baja fuerza de inserción, por ejemplo elzócalo del
microprocesador Itanium2 .
Celeron: este circuito Intel viene en un encapsulado de 478 pines.
•Pentium 4: utiliza un encapsulado de 478 pines, que se conecta a un socket 478.
•Duron: microprocesador de AMD viene en un encapsulado de 462 pines, para colocarse en un conector
llamado Socket-A.
•Athlon: microprocesador de AMD cuyo esempeño ha llegado a superar al Pentium 4, y a un precio bastante
menor. Viene en un encapsulado de 462 pines, requiere un Socket-A.
•Athlon 64: utiliza un nuevo encapsulado de 754 terminales, requiere un Socket-754.
•Opteron y Athlon 64FX usan un encapsulado de 940 terminales, requiere un Socket-940.
•C3: Es el único microprocesador que VIA-Cyrix produce, por ahora, utiliza un encapsulado de 370 terminales
que se conecta a un Socket 370.
126
5.2 Procesadores y Controladores
SOCKET A
SOCKET
478
SOCKET
754
Socket 370, 370 pines, Socket 478, 478 pines, Socket 754, 754 pines,
Socket A 462 pines
127
5.2 Procesadores y Controladores
PENTIUM PRO PENTIUM II para
computador de
escritorio y portátil
PENTIUM III
CELERON
• El Pentium HT, considerado como una variante del Pentium 4, es un circuito ideal
para aplicaciones que requieren de muchos recursos, animaciones en tercera
diemensión, edición de video en tiempo real, manejo de bases de datos
gigantescas. Viene en un encapsulado de 478 terminales y debe colocarse en
tarjetas madres especiales, por el consumo de grandes cantidades de energía.
128
5.2 Procesadores y Controladores
129
5.2 Procesadores y Controladores
MICROPROCESADOR ATHLON 64, PARA MÁQUINAS DE ESCRITORIO Y
PORTÁTILES.
130
5.2 Procesadores y Controladores
AMD Sempron: es de la gama baja de AMD Streaming SIMD Extensions 2, Socket A ZIF, 462 pines.
131
5.2 Procesadores y Controladores
MICROPROCESADOR
C3.
132
5.2 Procesadores y Controladores
Comparación
Rendimiento
Pentium 4 vs ATHLON
XP
Extraído de Tomshardware.com
133
5.2 Procesadores y Controladores
• Microcontrolador
Es capaz de integrar
inteligencia casi a
cualquier artefacto.
Es un computador
dentro de un solo
chip.
MICROCONTROLADOR.
Arquitectura de Computadores y Sistema Operativo
Controlador
Recibe el nombre de controlador, el dispositivo que se emplea para el gobierno de uno o varios
procesos. Un controlador consta de un programa más o menos complejo que da las pautas para
realizar un trabajo ayudado por unos sensores y actuadores que recogen la información y transmiten
las instrucciones.
El concepto de controlador ha permanecido invariable a través de los tiempos, pero su
implementación física ha variado frecuentemente. Tres décadas atrás, los controladores se construían
exclusivamente con componentes de lógica discreta; posteriormente se emplearon los
microprocesadores, que se rodeaban con chips de memoria y E/S sobre una tarjeta de circuito
impreso.
En los 70, los fabricantes de circuitos integrados iniciaron la difusión de un nuevo circuito para control,
medición e instrumentación al que llamaron microcomputador en un sólo chip o de manera más
exacta microcontrolador.
El microcontrolador es uno de los logros más sobresalientes del siglo XX. Este dispositivo ha
evolucionado a mayor velocidad que ningún otro invento en la historia, la capacidad del
microcontrolador ha aumentado 10.000 veces en los últimos 25 años.
En la imagen se ve el diminuto tamaño de un microcontrolador comparado con una aguja. El mayor
atributo del microcontrolador es que puede integrar inteligencia casi a cualquier artefacto. Es un
computador dentro de un solo chip. Se le puede entrenar para adaptarse a su entorno, responder a
condiciones cambiantes y volverse más eficiente y que responda a las necesidades únicas de sus
usuarios. El número de productos que funcionan en base a uno o varios microcontroladores aumenta
de forma exponencial.
134
5.2 Procesadores y Controladores
• Características del microcontrolador
9 Circuito integrado programable y contiene
todos los componentes de un
computador.
9 Tamaño reducido.
9 Controla el funcionamiento de una tarea
determinada.
9 Va incorporado en el dispositivo al que
gobierna (controlador incrustado).
9 Es un dispositivo dedicado.
135
5.2 Procesadores y Controladores
• Características del microcontrolador
136
5.2 Procesadores y Controladores
• Campos en los que se utiliza microcontroladores
Automatización industrial Termorregulación
Electrodomésticos Robótica
137
5.2 Procesadores y Controladores
• Clasificación de los microcontroladores
9 Tamaño de los datos
Microcontroladores de 4 bits
Microcontroladores de 8 bits
Microcontroladores de 16 bits
Microcontroladores de 32 bits
Microcontroladores de 64 bits
138
5.2 Procesadores y Controladores
9 Arquitectura básica
Microcontroladores
Arquitectura Von
Arquitectura Harvard
Neumann
9Arquitectura básica.
Según la arquitectura interna de la memoria del microcontrolador se puede
distinguir entre:
•Microcontroladores con arquitectura Von Neumann.
•Microcontroladores con arquitectura Harvard.
Inicialmente, todos los microcontroladores adoptaron la arquitectura clásica de Von
Neumann. Actualmente, muchos microcontroladores utilizan esta arquitectura, pero
poco a poco se impone la arquitectura Harvard.
139
5.2 Procesadores y Controladores
9 Arquitectura del procesador
Microcontroladores
140
5.2 Procesadores y Controladores
9 Tipo de memoria de programa
Microcontroladores
Memoria
Memoria ROM Flash
con máscara
Memoria
Memoria OTP
EEPROM
Memoria EPROM
141
5.2 Procesadores y Controladores
• Microcontroladores PIC
Características Relevantes de los PIC´s
9 La arquitectura del procesador sigue el modelo
Harvard.
9 Se aplica la técnica de segmentación (“pipe-
line”).
9 El formato instrucciones tiene la misma
longitud.
Microcontroladores PIC
El primer escollo al que se enfrenta un ingeniero a la hora de materializar una idea
usando un microcontrolador, es la elección de una familia de microcontroladores y dentro
de esta, un modelo en concreto que se ajuste lo mejor posible a las necesidades del
diseño. En el mercado existen multitud de fabricantes. Todos los microcontroladores que
se fabrican hoy en día son buenos, y el mejor no siempre es el mismo. Cambian el
modelo y el fabricante según la aplicación y las circunstancias que lo envuelven.
Los PIC Peripheral Interface Controller) son muy apetecidos ante cualquier otro ya sea de
Intel, Motorola, Altair. Influye en esto su velocidad, el bajo precio, la facilidad de uso,
reducido consumo, la información, pequeño tamaño, fácil programabilidad o la
abundancia de información y de herramientas económicas de soporte.
Dentro de las características más relevantes del microcontolador PIC (están las
siguientes.
9La arquitectura del procesador sigue el modelo Harvard, donde el CPU se conecta de
forma independiente y con buses distintos con la memoria de instrucciones y con la de
datos.
9Se aplica la técnica de segmentación (“pipe-line”) en la ejecución de las instrucciones.
La segmentación permite al procesador realizar al mismo tiempo la ejecución de una
instrucción y la búsqueda del código de la siguiente.
9El formato de instrucciones tiene la misma longitud. Todas las instrucciones de los
microcontroladores de la gama baja tienen una longitud de 12 bits. Las de la gama media
tienen 14 bits y más las de la gama alta. Esta característica es muy ventajosa en la
optimización de la memoria de instrucciones y facilita enormemente la construcción de
ensambladores y compiladores.
142
5.2 Procesadores y Controladores
Características relevantes de los PIC´s
9 Procesador RISC .
9 Instrucciones ortogonales.
9 Arquitectura basada en un banco de
registros.
143
5.2 Procesadores y Controladores
• Diferencias principales entre controladores y
procesadores
9 Tipo de Sistema
Los controladores son sistemas cerrados.
Los procesadores son sistemas abiertos.
9 Propósito
Los controladores son de propósito
específico.
Los procesadores son de propósito
general.
144
6.1 Taxonomía de Flynn
6.2 Multiprocesadores
145
6.1 Taxonomía de Flynn
Taxonomía de Flynn.
En 1972 Michael Flynn, profesor de ingeniería eléctrica en la de
la Universidad de Stanford, publicó un documento en donde escogió dos
características de las computadoras y probó con las 4 combinaciones
posibles. Dos estaban en la mente de todos, y las otras no.
Esta taxonomía (organización) es ampliamente conocida y aceptada.
Describe las computadoras por como los flujos de instrucciones interactúan
con los flujos de información.
Clasificación clásica de arquitectura de computadores que hace alusión a sistemas
con uno o varios procesadores. Flynn la publicó por primera vez en 1966 y por
segunda vez en 1970.
Esta taxonomía se basa en el flujo que siguen los datos dentro de la máquina y de
las instrucciones sobre esos datos.
146
6.1 Taxonomía de Flynn
Flujo de Instrucciones
147
6.1 Taxonomía de Flynn
• Clasificación de los sistemas según FLYNN
SISD SIMD
Sistemas
MISD MIMD
148
6.1 Taxonomía de Flynn
149
6.1 Taxonomía de Flynn
Flujo de
Instrucciones
Secuencia de Secuencia de
Control Instrucciones Procesador Datos Memoria
Ejemplo: Para procesar la suma de N números a1, a2, ... aN, el procesador necesita
accesar a memoria N veces consecutivas (para recibir un número). También son
ejecutadas en secuencia N-1 adiciones. Es decir los algoritmos para las
computadoras SISD no contienen ningún paralelismo.
150
6.1 Taxonomía de Flynn
151
6.1 Taxonomía de Flynn
Flujo de
Datos 1 Unidad de
Memoria 1 Proceso 1
Flujo de
Flujo de Instrucciones
Datos 2
Unidad de Unidad de
Memoria 2 Proceso 2 Control
.
.
. Flujo de
Datos n Unidad de
Memoria n
Proceso n
Flujo de Datos
En este modelo hay n secuencias de datos, una por procesador, así que diferentes
datos pueden ser utilizados en cada procesador. Los procesadores operan
sincronizadamente y hay un reloj global que se utiliza para asegurar esta
operación. Es decir, en cada paso todos lo procesadores ejecutan la misma
instrucción, cada uno en diferente dato.
La operación con matrices se puede realizar con este sistema.
Ejemplo: Sumando dos matrices A + B = C.
Siendo A y B de orden 2 y con 4 procesadores:
A+B=C
A11 + B11 = C11 A12 + B12 = C12
A21 + B21 = C21 A22 + B22 = C22
152
6.1 Taxonomía de Flynn
153
6.1 Taxonomía de Flynn
154
6.1 Taxonomía de Flynn
155
6.1 Taxonomía de Flynn
156
6.1 Taxonomía de Flynn
157
6.1 Taxonomía de Flynn
Flujo de Flujo de
Instrucciones 1 Unidad de Instrucciones 1 Unidad de
Memoria 1 Control 1 Proceso 1
Flujo de
Datos
Flujo de Flujo de
Instrucciones 2 Unidad de Instrucciones 2 Unidad de
Memoria 2
Control 2 Proceso 2
Flujo de
Datos
Flujo de Flujo de
Memoria n Instrucciones n Instrucciones n
Unidad de Unidad de
Control n Proceso n
Flujo de Datos
158
6.1 Taxonomía de Flynn
159
6.1 Taxonomía de Flynn
Flujo de Flujo de
Instrucciones 1 Instrucciones 1 Unidad de
Unidad de
Memoria 1 Flujo de Control 1 Proceso 1
Datos 1
Flujo de Flujo de
Memoria 2
Instrucciones 2 Unidad de Instrucciones 2 Unidad de
Control 2 Proceso 2
Flujo de
Datos 2
Flujo de Flujo de
Instrucciones n
Unidad de Instrucciones n Unidad de
Memoria n Flujo de Control n Proceso n
Datos n
160
6.1 Taxonomía de Flynn
9 Modelo MIMD con Memoria Compartida
Desventajas
Ventajas
Fácil programación.
Desventajas:
•El acceso simultáneo a memoria es un problema.
•Poca escabilidad de procesadores, debido a que se puede generar un cuello de
botella al incrementar el numero de CPU's.
•Todos los CPUs tienen un camino libre a la memoria. No hay interferencia entre
CPUs. La razón principal por el alto precio de Cray es la memoria.
Ventaja:
•La facilidad de la programación. Es mucho más fácil programar en estos sistemas
que en sistemas de memoria.
Las computadoras MIMD con memoria compartida son sistemas conocidos como
de multiprocesamiento simétrico (SMP) donde múltiples procesadores comparten
un mismo sistema operativo y memoria. Otro término con que se le conoce es
máquinas firmemente juntas o de multiprocesadores.
161
6.1 Taxonomía de Flynn
Memoria Compartida
Red
162
6.1 Taxonomía de Flynn
9 Modelo MIMD con Memoria Distribuida
Desventajas
El acceso remoto a memoria es lento.
La programación puede ser complicada.
Ventajas
Escalabilidad. Mientras que la demanda de los
recursos crece, se puede agregar más memoria
y procesadores.
Desventajas:
•El acceso remoto a memoria es lento.
•La programación puede ser complicada.
Las computadoras MIMD de memoria distribuida son conocidas como sistemas de
procesamiento en paralelo masivo (MPP) donde múltiples procesadores trabajan en
diferentes partes de un programa, usando su propio
Ventajas:
•La escalabilidad. Las computadoras con sistemas de memoria distribuida son
fáciles de escalar, mientras que la demanda de los recursos crece, se puede
agregar más memoria y procesadores.
163
6.1 Taxonomía de Flynn
Red
164
6.1 Taxonomía de Flynn
9 Modelo MIMD con Memoria Compartida
Distribuida
Ventajas
Escalabilidad como en los sistemas de memoria
distribuida.
Fácil de programar.
No existe el cuello de botella.
Ventajas:
•Presenta escalabilidad como en los sistemas de memoria distribuida.
•Es fácil de programar como en los sistemas de memoria compartida.
•No existe el cuello de botella que se puede dar en máquinas de sólo memoria
compartida.
165
6.1 Taxonomía de Flynn
Red
166
6.1 Taxonomía de Flynn
9 MIMD (Multiple Instruction stream, Multiple
Data stream)
Cuando las unidades de proceso reciben datos
de una memoria no compartida estos sistemas
reciben el nombre de Multiple SISD (MSISD).
En arquitecturas con varias unidades de control
(MISD y MIMD), existe otro nivel superior con
una unidad de control que controla todas las
unidades de control del sistema.
-SGI/Cray Power Challenge Array,
-SGI/Cray Origin-2000
-HP/Convex SPP-2000
Arquitectura de Computadores y Sistema Operativo
.
•Cuando las unidades de proceso reciben datos de una memoria no
compartida estos sistemas reciben el nombre de MULTIPLE SISD (MSISD).
•En arquitecturas con varias unidades de control (MISD Y MIMD), existe otro
nivel superior con una unidad de control que se encarga de controlar todas
las unidades de control del sistema.
•Ejemplo de estos sistemas son las máquinas paralelas actuales.
•Categorías de Ordenadores Paralelos.
•Clasificación moderna que hace alusión única y exclusivamente a los
sistemas que tienen más de un procesador (i.e máquinas paralelas).
•Existen dos tipos de sistemas teniendo en cuenta su acoplamiento. Los
sistemas fuertemente acoplados son aquellos en los que los procesadores
dependen unos de otros. Los sistemas débilmente acoplados son aquellos
en los que existe poca interacción entre los diferentes procesadores que
forman el sistema.
•Atendiendo a esta y a otras características, la clasificación moderna divide a
los sistemas en dos tipos: Sistemas multiprocesador (fuertemente
acoplados) y sistemas multicomputador (débilmente acoplados).
167
6.2 Multiprocesadores
MULTIPROCESADORES
•Un multiprocesador puede verse como un computador paralelo compuesto por varios procesadores
interconectados que comparten un mismo sistema de memoria.
•Los sistemas multiprocesadores son arquitecturas MIMD con memoria compartida. Tienen un único
espacio de direcciones para todos los procesadores y los mecanismos de comunicación se basan en
el paso de mensajes desde el punto de vista del programador.
•Dado que los multiprocesadores comparten diferentes módulos de memoria, pudiendo acceder a un
mismo módulo varios procesadores, a los multiprocesadores también se les llama sistemas de
memoria compartida.
Multiprocesadores y Multicomputadores
•Existen similitudes entre los sistemas multiprocesadores y multicomputadores debido a que ambos
fueron pensados con un mismo objetivo: dar soporte a operaciones concurrentes en el sistema. Sin
embargo, existen diferencias importantes basadas en el alcance de los recursos compartidos y la
cooperación en la solución de un problema.
•Un sistema multicomputador consiste de diversas computadoras autónomas que pueden o no
comunicarse entre sí.
•Un sistema multiprocesador está controlado por un sistema operativo que provee la interacción
entre los procesadores y sus programas a nivel de dato, proceso y archivo.
168
6.2 Multiprocesadores
169
6.2 Multiprocesadores
170
6.2 Multiprocesadores
• Clasificación de los Multiprocesadores
9 Por la Forma de Compartir la Memoria
Sistemas
Multiprocesador
NUMA UMA
COMA
.
Dependiendo de la forma en que los procesadores comparten la memoria, se clasifican en
sistemas multiprocesador:
•UMA (Uniform memory access) Acceso uniforme a memoria: Todos los procesadores
pueden acceder a toda la memoria principal utilizando instrucciones de carga y
almacenamiento. El tiempo de acceso de un procesador a cualquier región de la memoria
es el mismo. El tiempo de acceso a memoria por parte de todos los procesadores es el
mismo
•NUMA (Nonuniform memory access) Acceso no uniforme a memoria: Todos los
procesadores tienen acceso a todas las partes de memoria principal utilizando
instrucciones de carga y almacenamiento. El tiempo de acceso a memoria de un
procesador depende de la región a la que se acceda. La última frase es cierta para todos
los procesadores; no obstante, para procesadores distintos, las regiones de memoria que
son más lentas o más rápidas son diferentes.
•COMA (Cache only memory access) Acceso sólo a memoria caché: Estos modelos
utilizan sólo memorias caché. Son un caso particular de la NUMA en el cual la memoria
distribuida se convierte en memorias caché. No existen jerarquías de memoria en cada
nodo procesador. Todas las caches forman un espacio de direccionamiento global. El
acceso a una caché remota se facilita a través de los directorios distribuidos de caché los
cuales en ciertas arquitecturas pueden estructurarse en forma jerárquica.
171
6.2 Multiprocesadores
Sistemas UMA
NUMA Multiprocesador
COMA
Sistemas
Multiprocesador
UMA
COMA
NUMA
• Son sistemas de memoria compartida.
• El tiempo de acceso varía según donde se encuentre
localizado el acceso.
• El acceso a memoria no es uniforme para diferentes
procesadores.
• Existen memorias locales asociadas a cada
procesador y estos pueden acceder a datos de su
memoria local de una manera más rápida que a las
memorias de otros procesadores.
Arquitectura de Computadores y Sistema Operativo
173
6.2 Multiprocesadores
Sistemas
Multiprocesador
NUMA
COMA
UMA
174