Está en la página 1de 359

Instituto Tecnolgico Superior de Coatzacoalcos Ingeniera en Sistemas Computacionales

ANTOLOGIA
Nombre de Asignatura ARQUITECTURA DE COMPUTADORES
Elaborado por:

ING. ELIZABETH GUERRERO SANCHEZ ING. TED ECHEVERRIA DIONISIO

Coatzacoalcos, Ver., 2010.

Introduccin

La historia de la computadora es muy interesante ya que muestra cmo el hombre logra producir las primeras herramientas para registrar los acontecimientos diarios desde el inicio de la civilizacin, cuando grupos empezaron a formar naciones y el comercio era ya medio de vida. La evolucin histrica del procesamiento de datos se divide en cuatro fases: 1.- tcnicas de registros 2.- dispositivos de clculo 3.- programas de tarjetas perforadas 4.- computadores electrnicos Una computadora procesa datos. Las empresas desarrollan departamentos de procesamiento de datos (programacin de computadoras), pues las computadoras procesan datos para producir informacin significativa. Los datos se construyen de hechos y cifras en bruto (sin procesar). La informacin est constituida por los datos procesados; la informacin tiene significado, los datos no.La computadora y sus programas llevan a cabo el procesamiento de la entrada; por lo tanto el programa convierte los datos en informacin til. Con esta antologa vamos a poder identificar los elementos que integran una computadora y la forma en que se relacionan. Tambin Describir el funcionamiento y tcnicas de transferencia de datos entre los elementos internos de una computadora.de igual manera tambin nos ayudara a Identificar los componentes que integran una computadora, as como sus caractersticas y aplicaciones y conocer el origen, evolucin, estado actual y aplicaciones de los microcontroladores. INTRODUCCIN...... II INDICE. III JUSTIFICACIN.... V
Pgina 2

OBJETIVO GENERAL... X UNIDAD 1. Arquitectura de computadoras


1.1 Modelos De Arquitecturas De CmputoIIX 1.1.1Arquitecturas De Computo ClsicasX 1.1.2 Arquitecturas De Cmputo Segmentadas...XIX 1.1.3 Arquitecturas De Cmputo De Multiprocesamiento.XXI

1.2 Anlisis De Los ComponentesXXIII 1.2.1 CPUXXIV 1.2.1.1 Arquitecturas CPUXXVII 1.2.1.2 Tipos CPUXXX 1.2.1.3 Caractersticas CPUXXXIV 1.2.1.4 FuncionamientoXXXIX 1.2.2 MemoriaXLI 1.2.2.1 ArquitecturasXLIII 1.2.2.2 Tipos MemoriasXLVII 1.2.2.3Caracteristicas MemoriasLVI 1.2.2.4 Funcionamiento MemoriasLVIII 1.2.3 Dispositivos De I/OLXX 1.2.3.1 Arquitectura del sistema de I/O (E/S)LXXVI 1.2.3.2 Tipos De I/OLXXX 1.2.3.3 Caractersticas de los dispositivos de Entrada y SalidaLXXXII 1.2.3.4 Funcionamiento de los dispositivos de I/OLXXXIII

UNIDAD 2. Comunicacin interna en la computadora 2.1 BusesLXXXVII 2.1.1 Bus localXCV 2.1.2 Bus de datos.CII 2.1.3 Bus de direcciones..CIV
Pgina 3

2.1.4 Bus de control...CVI 2.1.5 Buses normalizados.CVIII 2.2 DireccionamientoCXVI 2.2.1 Modo real..CXVII 2.2.2 Modo protegido.CXIX 2.2.3 Modo real virtual..CXXII 2.3 TemporizacinCXXV 2.3.1 Reloj de sistemaCXXXI 2.3.2 Reset de sistemaCXXXIII 2.3.3 Estados de espera..CXXXIV 2.4 Interrupciones de hardwareCXXXVI 2.4.1 Enmascarable..CXXXIX 2.4.2 No-enmascarableCXLII 2.5 Acceso directo a memoriaCXXLVI 2.5.1 Sistema de videosCXLI 2.5.2 Sistema de discosCXLVII 2.5.3 Otras aplicacionesCL UNIDAD 3. Seleccin de componentes para ensamble de equipos de cmputo. 3.1 ChipsetCLIIV 3.1.1 CPUCLIV 3.1.2 Controlador del busCLXX 3.1.3 Puertos de E/S..CLXXXVI 3.1.4 Controlador de interrupciones.CLXXXIIX 3.1.5 Controlador de DMACLXXXIX 3.1.6 Circuitos de temporizacin y control.............................................CXCIIV 3.1.7 Controladores de videoCXCIV 3.2 Aplicaciones..CXCVIII 3.2.1 Entrada/Salida...CXCVIII 3.2.2 Almacenamiento..CCVII 3.2.3 Fuente de alimentacin.CCX
Pgina 4

3.3 Ambiente de servicios..CCXI 3.3.1 Negocios..CCXIV 3.3.2 IndustriaCCXVI 3.3.3 Comercio electrnicoCCXVIII UNIDAD 4. Microcontroladores 4.1 ArquitecturaCCXXIII 4.1.1 TerminalesCCXXXIII 4.1.2 CPUCCXLVI 4.1.3 Espacio de memoriaCCLV 4.1.4 Entrada/Salida..CCLXVI 4.1.5 Caractersticas especialesCCLXIX 4.2 ProgramacinCCLXXII 4.2.1 Modelo de programacin.CCLXXV 4.2.2 Conjunto de instrucciones..CCLXXXIII 4.2.3 Modos de direccionamientoCCCVII 4.2.4 Lenguaje de ensambladorCCCXXVII 4.3 AplicacionesCCCXXXVIII 4.3.1 Como sistema independienteCCCXXXVIII 4.3.2 Como subsistema de una computadora..CCCXLVI CONCLUSINCCCL FUENTES CONSULTADAS.. 90

Justificacin

Pgina 5

El presente trabajo se ha elaborado con el fin de facilitar al alumno la comprensin de los temas tratados en esta asignatura, tambin fue elaborado con el fin de disminuir el tiempo invertido al realizar las investigaciones sobre el contenido de cada unidad.

Objetivo general

Proporcionar los conocimientos y las habilidades que le permitirn al estudiante, sugerir soluciones en una organizacin aplicando sistemas de
Pgina 6

cmputo.

Pgina 7

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

I. ARQUITECTURA DE COMPUTADORAS 1.1 Modelos De Arquitecturas De Cmputo

La arquitectura de computadoras es el diseo conceptual y la estructura operacional fundamental de un sistema de computadora. Es decir, es un modelo y una descripcin funcional de los requerimientos y las implementaciones de diseo para varias partes de una computadora, con especial inters en la forma en que la unidad central de proceso (CPU) trabaja internamente y accede a las direcciones de memoria. Tambin suele definirse como la forma de seleccionar e interconectar componentes de hardware para crear computadoras segn los requerimientos de funcionalidad, rendimiento y costo. La segmentacin de instrucciones es similar al uso de una cadena de montaje en una fbrica de manufacturacin. En las cadenas de montaje, el producto pasa a travs de varias etapas de produccin antes de tener el producto terminado. Cada etapa o segmento de la cadena est especializada en un rea especfica de la lnea de produccin y lleva a cabo siempre la misma actividad. Esta tecnologa es aplicada en el diseo de procesadores eficientes.

Pgina 8

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.1Una visin tpica de una arquitectura de computadora

como una serie de capas de abstraccin: hardware, firmware, ensamblador, kernel, sistema operativo y aplicaciones. A estos procesadores se les conoce como pipeline processors. Estos estn compuestos por una lista de segmentos lineales y secuenciales en donde cada segmento lleva a cabo una tarea o un grupo de tareas computacionales. Los datos que provienen del exterior se introducen en el sistema para ser procesados. La computadora realiza operaciones con los datos que tiene almacenados en memoria, produce nuevos datos o informacin para uso externo. Las arquitecturas y los conjuntos de instrucciones se pueden clasificar considerando los siguientes aspectos: Almacenamiento de operandos en la CPU: dnde se ubican los operandos aparte de la memoria. Nmero de operandos explcitos por instruccin: cuntos operandos se expresan en forma explcita en una instruccin tpica. Normalmente son 0, 1, 2 y 3. Posicin del operando: Puede cualquier operando estar en memoria?, o deben estar algunos o todos en los registros internos de la CPU. Cmo se especifica la direccin de memoria (modos de direccionamiento disponibles).

Pgina 9

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Operaciones: Qu operaciones estn disponibles en el conjunto de instrucciones. Tipo y tamao de operandos y cmo se especifican.

1.1.1Arquitecturas De Computo Clsicas


Principio del formulario

El modelo clsico de arquitectura de computadoras fu diseado por Jhon Von Newman que consta de los siguientes elementos: Dispositivos de entrada, de proceso, de almacenamiento y de salida

MODELO DE VON NEUMANN


Von Neumann era un genio comparable a Leonardo Da Vinci, hablaba diversos idiomas, era experto en las ciencias fsico-matemticas y era capaz de recordar todo cuanto hubiera escuchado, ledo o visto. Poda citar de memoria, palabra por palabra, el texto de los libros que haba ledo en aos anteriores. En la poca en que se interes en las computadoras, era ya el matemtico ms eminente del mundo. Algo que le pareca evidente, era que programar computadoras con una enorme cantidad de interruptores y cables era algo lento, tedioso y poco flexible, y pens que el programa poda representarse en forma digital en la memoria de la computadora, lo mismo que los datos. Tambin observ que la torpeza de la aritmtica decimal en serie utilizada por la ENIAC, con cada dgito representado por diez bulbos (uno encendido y nueve apagados), poda reemplazarse usando aritmtica binaria paralela. Su diseo bsico, ahora conocido como una Mquina de Von Neumann, se us en la EDSAC para la primera computadora que almacenaba el programa, y constituye todava la base para la mayora de las
Pgina 10

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

computadoras digitales, casi medio siglo despus. Este diseo y la mquina IAS, construida en colaboracin con Herman Goldstine, ha tenido una influencia tan grande. La Mquina de Von Neumann tena cinco partes bsicas: la memoria, la unidad aritmtica-lgica, la unidad de control del programa y los equipos de entrada y salida.

COMPONENTES: La Memoria: Constaba de 4096 palabras, cada una con 40 bits (0 o 1). * Cada palabra poda contener dos instrucciones de 20 bits o un nmero entero de 39 bits y su signo. * Las instrucciones tenan 8 bits dedicados a sealar el tipo de la misma y 12 bits para especificar alguna de las 4096 palabras de la memoria.
Pgina 11

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Unidad de Control: Determina cual es la siguiente instruccin a ejecutar y se la pasa al ALU. ALU (Aritmetic Logic Unit): La Unidad Aritmtica Lgica, es el TALLER donde se ejecutan las instrucciones. Acumulador: 40 bits

Que sirven para: * Recibir datos de entrada. * Enviar datos a la salida. * Guardar el resultado de la ltima operacin.

ARQUITECTURA DE UNA COMPUTADORA:


En el interior del computador la fuente de alimentacin destaca por su gran tamao y porque es diferente a cualquiera de los componentes que en el se encuentran. Se trata de una caja metlica en la que en su interior alberga el ms primitivo circuito que cualquier computador posee, ya que los componentes que guarda son resistencias, condensadores bobinas, etc., sin estar integrados. Su misin es la de dar al PC toda la energa necesaria para su funcionamiento. Esta energa la recoge de la red elctrica que es alterna, la rectifica a continua y despus la divide en tensiones menores para alimentar cada uno de los componentes que hay dentro del computador. Estas tensiones son: +5 V/5 V cable rojo, +12 V/ 12 V cable amarillo y GND cable negro.

Fuente de alimentacin.
Placa Base

Pgina 12

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Los cimientos de la arquitectura modular del PC parten de la placa base, pieza clave del hardware a la que se conectan todos los componentes y los perifricos del computador. La placa base es una plancha de circuito impreso formada por un conglomerado de capas de baquelita o resina. En ella, se intercalan los distintos circuitos elctricos que comunican todos los elementos que gestionan y determinan su funcionamiento, como el zcalo en el que se sita el microprocesador, las ranuras para los mdulos de memoria, el chipset o, entre otros, los conectores de los buses de expansin y sus circuitos de apoyo. A continuacin se exponen algunas de las caractersticas ms importantes que definen una placa base. Tipos En los computadores actuales existen seis tipos bsicos de placas base, en funcin de la estructura del procesador. Socket 7, Socket 8, Super 7, Slot 1, Slot 2 y Socket 370. Las placas Socket 7 albergan los procesadores Pentium, K5 de AMD, 686 de Cyrix y Winchip C6 de IDT; ya no se venden, pues carecen de las interfaces ms utilizadas en la actualidad, como el bus AGP y el puerto USB. Estos dos estndares se incorporan en las placas Super 7, tambin compatibles Pentium y K6. Las placas Socket 8, muy escasas, albergan los extinguidos procesadores Pentium Pro. Las placas Slot 1 son necesarias para suministrar soporte a los Pentium II/III y Celeron, y suelen disponer del formato ATX. Una variante son las placas Slot 2, soporte de la versin Xeon del Pentium II, utilizada en servidores profesionales. Finalmente, las placas Socket 370 alojan una versin especial de Celeron. Formato

Pgina 13

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Existen dos grandes estndares: ATX y Baby AT. El segundo, est basado en el original del IBM XT, pero de dimensiones ms reducidas. En este tipo de placas es habitual el conector gordo para el teclado. Las ranuras de expansin se sitan generalmente en la parte posterior izquierda de la placa colocando el microprocesador justo enfrente. Esto era perfectamente vlido cuando los chips an eran lentos y disipaban poco calor, pero el aumento de velocidad, oblig a la incorporacin de componentes capaces de refrigerarlos. Estos, suelen dificultar la instalacin de tarjetas de expansin ms largas bloqueando algunos slots. Adems, el mantenimiento o actualizacin de determinados componentes se convierte en una tarea molesta, ya que es preciso desmontar medio computador hasta llegar a ellos con holgura. Esto sucede, generalmente, con los zcalos de memoria que se encuentran tapados por una maraa de cables o incluso por las unidades de almacenamiento discos duros o disqueteras. El formato ATX es ms moderno y no mejora la velocidad, sino la flexibilidad, integracin y funcionalidad. Reorganiza la distribucin de los componentes de la placa base, de forma que al insertar tarjetas no colisionen con chips como el procesador. Adems, se acorta la longitud de los cables y se mejora la ventilacin de los componentes. Tambin cambia el conector de alimentacin para la placa base y la forma de la caja, por lo que se deber cambiar la caja externa antes de comprar la placa. El ATX permite integrar componentes en la placa como la tarjeta grfica, la tarjeta de sonido, y los conectores de teclado y ratn tipo PS/2, serie, paralelo o USB.

Esquema del formato ATX.


El chipset El juego de chips de una placa, o chipset, es posiblemente uno de sus componentes integrados ms importante, ya que controla el modo de operacin
Pgina 14

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de la placa e integra todas sus funciones, por lo que se puede decir que determina el rendimiento y caractersticas de la misma. Determina lo que puede hacer el computador. A continuacin se resumen algunas de las funciones y propiedades controladas por el Chipset: - La velocidad del bus 33, 40, 50, 55, 60, 66, 75, 83, 100 MHz. - El puente PCI/ISA. - El soporte para el controlador de disco duro en placa EIDE o SCSI y sus caractersticas Modo DMA, ATA - El controlador de DMA. - El controlador de IRQ. - Los tipos de memoria soportados FPM, EDO, SDRAM, chequeo de paridad, ECC - El tamao mximo de los mdulos de memoria 16, 32, 64, 128 Mb - La mxima rea de memoria cacheable 64, 512, 1024 Mb - El tipo de cach secundario Nivel 2 L2 - El tipo de CPU 486, P-24T, P5, P 55 C?, Pentium Pro, Pentium II - La naturaleza del bus PCI sincrnico o asincrnico. - El nmero de CPUs soportado simple, dual, cudruple - Las caractersticas Plug & Play. - Las caractersticas especiales soportadas AGP, IrDA, USB, PS/2
Pgina 15

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Cada uno de los bits de informacin almacenado en la memoria o enviado a cualquier dispositivo de E/S tiene que pasar a travs del chipset en su camino hacia la CPU. Todos los perifricos usan el chipset para acceder a otros perifricos y para establecer sus transacciones de datos con la CPU. Procesador El chip ms importante de cualquier placa base es el procesador. Sin l la computadora no podra funcionar. A menudo este componente se denomina CPU, que describe a la perfeccin su papel dentro del sistema. El procesador es realmente el elemento central de procesamiento de datos. Est formado por los siguientes elementos: - ALU Unidad Aritmtico Lgica. Realiza las operaciones matemticas y lgicas toma de decisiones, comparaciones, etc. - UC Unidad Central. Es el procesador propiamente dicho. Controla al resto de los componentes del computador. Para su correcto funcionamiento contiene un reloj que controla la velocidad a la que trabaja el procesador su velocidad se mide en MHz o GHz. - Memoria Central (R.A.M) habitualmente suele ser memoria cach y podemos distinguir entre: - Cach interna o de primer nivel (L1). Se localiza dentro del propio procesador, teniendo un tamao de 8 a 32 Kb. Al venir integrada en el procesador no puede ser ampliada; para ello habra que cambiar el procesador. - Cach externa o de segundo nivel (L2). Hasta la aparicin del procesador Pentium II, se encontraba fuera del procesador, en unos mdulos insertados en un zcalo especial para este tipo de memoria. Desde los procesadores Pentium

Pgina 16

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

II incorporan, adems de la cach de primer nivel, una cach de segundo nivel interna de 512 Kb y el correspondiente zcalo para poder insertar ms. La memoria cach de segundo nivel puede ser de 64 Kb hasta 1 Mb. Estructura de un procesador. Para aprovechar todo el potencial del procesador, el sistema hace uso de las denominadas IRQ (Interrupt Request interrupciones del sistema): seales que reclaman la atencin del procesador slo cuando es necesario. Viajan a travs de las pistas del bus y son procesadas segn su nivel de importancia para el sistema, de acuerdo a un orden jerrquico establecido mediante el nmero asignado a cada interrupcin. Evolucin del procesador Para evaluar la evolucin de los procesadores nos vamos a centrar en Intel, la compaa con mayor cuota de mercado.

Pentium Classic
Las primeras series, funcionaban a 60 y a 66 Mhz, y debido a que trabajaban a 5V. Tenan problemas de sobrecalentamiento. Adems trabajaban a la misma velocidad que el propio bus. A partir del modelo de 75 Mhz ya se empieza a trabajar con multiplicadores de frecuencia internos para que el rendimiento de los procesadores sea mayor que el del bus y la memoria. Permiten adems, solucionar el problema de sobrecalentamiento rebajando la tensin de funcionamiento de los nuevos modelos a 3,52 voltios, con lo que se consigue un menor consumo. Est optimizado para aplicaciones de 16 bits. Dispone de 8Kb de cach de instrucciones + 8Kb de cach de datos. Utiliza el zcalo de tipo 5 socket 5.
Pgina 17

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Pentium MMX:
El Pentium MMX es una mejora del Classic al que se le ha incorporado un nuevo juego de instrucciones 57 para ser exactos ,orientado a mejorar el rendimiento en aplicaciones multimedia que necesitan mover gran cantidad de datos de tipo entero, como pueden ser videos o secuencias musicales o grficos 2D. Entre otras mejoras, dispone de una cach que es el doble de la del Pentium normal, es decir 16 Kb para datos y 16 para instrucciones. Sigue siendo un procesador optimizado para aplicaciones de 16 bits. Requiere zcalo de tipo 7 socket 7.Trabaja a doble voltaje 3,3/2,8V y utiliza la tecnologa de 0,35 micras.

Pentium Pro
Este es uno de los mejores procesadores que ha sacado Intel. Parte de este mrito lo tiene la cach de segundo nivel, que est implementada en el propio chip, y por tanto se comunica con la CPU a la misma velocidad que trabaja sta internamente. El zcalo es especfico para este modelo y es conocido como Tipo 8. No cuenta con el juego de instrucciones MMX y est optimizado para aplicaciones de 32 bits Windows NT, Unix, OS/2 Adems, dispone de una cach L1 de 8KB + 8KB instrucciones + datos. Hay una gama de procesadores que posee 256 KB de cach L2, otra 512, y por ltimo un modelo que cuenta con un Mega.

1.1.2 Arquitecturas De Cmputo Segmentadas


Otra aportacin frecuente que aumenta el rendimiento del computador es el fomento del paralelismo implcito, que consiste en la segmentacin del

Pgina 18

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

procesador (pipe-line), descomponindolo en etapas para poder procesar una instruccin diferente en cada una de ellas y trabajar con varias a la vez. La arquitectura en pipeline (basada en filtros) consiste en ir transformando un flujo de datos en un proceso comprendido por varias fases secuenciales, siendo la entrada de cada una la salida de la anterior. Esta arquitectura es muy comn en el desarrollo de programas para el intrprete de comandos, ya que se pueden concatenar comandos fcilmente con tuberas (pipe). Tambin es una arquitectura muy natural en el paradigma de programacin funcional, ya que equivale a la composicin de funciones matemticas. La arquitectura pipe-line se aplica en dos lugares de la maquina, en la CPU y en la UAL. Veamos en que consiste el pipe-line y tratemos de entender porque el pipe-line mejora el rendimiento de todo el sistema. Veamos una CPU no organizada en pipe-line: Si se trata de una instruccin a ser ejecutada por la ALU podemos decir que la CPU realiza a lo largo del ciclo de maquina estas 5 tareas. Una vez que termina de ejecutar una instruccin va a buscar otra y tarda en ejecutarla un tiempo T, es decir cada T segundos ejecuta una instruccin. Qu sucede si dividimos en 5 unidades segn las 5 cosas que realiza la CPU? Supongamos la CPU dividida en 5 unidades, de tal forma que c/u tarde lo mismo en realizar su partecita. Es decir c/u tardar T/5.

Pgina 19

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Para que una instruccin se ejecute se necesita T segundos entonces para que usar pipe-line. Si ocurre esto en una CPU normal a una con pipe-line, la cantidad de instrucciones que se hacen por segundo aumenta, es decir aumenta el flujo de instrucciones que se ejecutan por segundo.

1.1.3 Arquitecturas De Cmputo De Multiprocesamiento

SMP es el acrnimo de Symmetric Multi-Processing, multiproceso simtrico. Se trata de un tipo de arquitectura de ordenadores en que dos o ms procesadores comparten una nica memoria central. Explicacin detallada La arquitectura SMP (Multi-procesamiento simtrico, tambin llamada UMA, de Uniform Memory Access), se caracteriza por el hecho de que varios microprocesadores comparten el acceso a la memoria. Todos los microprocesadores compiten en igualdad de condiciones por dicho acceso, de ah la denominacin simtrico. Los sistemas SMP permiten que cualquier procesador trabaje en cualquier tarea sin importar su localizacin en memoria; con un propicio soporte del sistema operativo, estos sistemas pueden mover fcilmente tareas entre los procesadores para garantizar eficientemente el trabajo. Una computadora SMP se compone de microprocesadores independientes que se comunican con la memoria a travs de un bus compartido. Dicho bus es un recurso de uso comn. Por tanto, debe ser arbitrado para que solamente un microprocesador lo use en cada instante de tiempo. Si las computadoras con un solo microprocesador tienden a gastar considerable tiempo esperando a que

Pgina 20

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

lleguen los datos desde la memoria, SMP empeora esta situacin, ya que hay varios parados en espera de datos. Conceptos relacionados Arquitectura NUMA Multiproceso simtrico Una de las formas ms fciles y baratas de aumentar el rendimiento del hardware es poner ms de una CPU en la placa. Esto se puede realizar haciendo que CPUs diferentes tengan trabajos diferentes (multiproceso asimtrico) o haciendo que todos se ejecuten en paralelo, realizando el mismo trabajo (multiproceso simtrico o SMP). El hacer multiproceso asimtrico requiere un conocimiento especializado sobre las tareas que la computadora debe ejecutar, lo que no est a nuestro alcance en un sistema operativo de propsito general como Linux. En cambio el multiproceso simtrico es relativamente fcil de implementar. Por relativamente fcil, quiero decir exactamente eso; no que sea realmente fcil. En un entorno de multiproceso simtrico, las CPUs comparten la misma memoria, y como resultado, el cdigo que corre en una CPU puede afectar a la memoria usada por otra. Ya no puedes estar seguro de que una variable que has establecido a un cierto valor en la lnea anterior todava tenga el mismo valor; la otra CPU quizs haya estado jugando con ella mientras no mirbamos. Obviamente, es imposible programar algo de esta manera. En el caso de la programacin de procesos esto no suele ser un problema, porque un proceso normalmente slo se ejecutar en una CPU a la vez12.1. El ncleo, sin embargo, podra ser llamado por diferentes procesos ejecutndose en CPUs diferentes. En la versin 2.0.x, esto no es un problema porque el ncleo entero est en un gran `spinlock. Esto significa que si una CPU est dentro del ncleo y otra
Pgina 21

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

CPU quiere entrar en l, por ejemplo por una llamada al sistema, tiene que esperar hasta que la primera CPU haya acabado. Esto es lo que hace al SMP en Linux seguro12.2, pero terriblemente ineficiente. En la versin 2.2.x, varias CPUs pueden estar dentro del ncleo al mismo tiempo. Esto es algo que los escritores de mdulos tienen que tener en cuenta.

1.2 Anlisis De Los Componentes


Para empezar a realizar un anlisis de los componentes de una computadora debemos introducirnos al objeto a analizar para saber entender ms su funcionamiento. Ahora nos introduciremos dentro de la computadora y desmontndolo analizaremos las piezas que tiene. Con cada una de ellas debern responder a las siguientes preguntas: Qu pieza es? La cantidad de cada pieza, cuntas piezas como sta suele tener? Para qu es? Qu funcin realiza De qu est hecha? Qu materiales se han utilizado? Qu medidas o tamao tiene? Cmo est unida a las dems piezas?

Pgina 22

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Caractersticas: si tiene algn otro dato interesante, clasificarlo

1.2.1 CPU
Unidad Central de Proceso (CPU) La Unidad Central de Proceso es el lugar donde se realizan las operaciones de clculo y control de los componentes que forman la totalidad del conjunto del sistema informtico. Las CPU de las actuales computadoras son microprocesadores construidos sobre un cristal de silicio semiconductor donde se crean todos los elementos que forman un circuito electrnico (transistores, etc.) y las conexiones necesarias para formarlo. El microcircuito se encapsula en una pastilla de plstico con una serie de conexiones hacia el exterior, en forma de patillas metlicas, que forman su nexo de unin al resto del sistema informtico. Estas pastillas de plstico, con una multitud de patillas de conexin metlicas, reciben el nombre de chips. El microprocesador central de una computadora se divide en: Unidad de Control (Control Unit o CU en ingls). Unidad Aritmtico-Lgica (Aritmethic Control Unit o ALU en ingls). Registros. La Unidad de Control maneja y coordina todas las operaciones del sistema informtico, dando prioridades y solicitando los servicios de los diferentes componentes para dar soporte a la unidad aritmtico-lgica en sus operaciones elementales.
Pgina 23

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La Unidad Aritmtico-Lgica realiza los diferentes clculos matemticos y lgicos que van a ser necesarios para la operatividad de la computadora; debe recordarse que todo el funcionamiento del sistema de una computadora se realiza sobre la base de una serie de operaciones matemticas en cdigo binario. Los Registros son una pequea memoria interna existente en la CPU que permiten a la ALU el manejo de las instrucciones y los datos precisos para realizar las diferentes operaciones elementales. De la misma forma que la placa principal tiene un bus para conectar la CPU con los diferentes dispositivos del sistema informtico, la unidad de control tiene un bus interno para conectar sus componentesName=g12; Hotword Style?=Book Default; .

Estructura del CPU El CPU debe: Extraer instrucciones Interpretar instrucciones Extraer datos Procesar datos Escribir datos Registros

Pgina 24

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El CPU debe tener un espacio de trabajo (almacenamiento temporal) Llamados registros La cantidad y funcin vara dependiendo del diseo del procesador Una de las decisiones ms importantes de diseo El nivel ms alto en la jerarqua de memoria

1.2.1.1Arquitecturas CPU
Existen dos tipos ms comunes: 1) CISC: Su sistema de trabajo se basa en la microprogramacin. Consiste en hacer que cada instruccin sea interpretada por un mini programa. 2) RISC: Microprocesador con un conjunto de instrucciones muy reducidas en contraposicin. se basan en estructuras simples y por lo tanto su complejidad total de la CPU es menor. ORGANIZACIN Y ARQUITECTURA INTERNA DE LA CPU Diagrama de bloques Los bloques funcionales bsicos son: la unidad de procesamiento central (CPU), la memoria principal, y el procesador de Entrada - Salida. Unidad de proceso central: esta es la responsable de la interpretacin y ejecucin de instrucciones contenidas en la memoria principal, las comunicaciones entre la CPU y la memoria principal se realizan a travs de 2 canales funcionalmente distintos: el de direcciones y el de datos.
Pgina 25

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Para introducir en la memoria, una instruccin especifica, la CPU enva a dicha memoria la direccin de la instruccin por el canal de direcciones y recibe por el mismo medio la instruccin que est en esa direccin. Parte de la instruccin es utilizada por la CPU para identificar la operacin. Esta parte se llama cdigo de operacin de la instruccin. La informacin restante se utiliza para determinar la o las localidades de los datos con los cuales se va a efectuar la operacin. La accin de leer una instruccin en la CPU y prepararla para su ejecucin se denomina ciclo de bsqueda. Para completar una instruccin la CPU decodifica el cdigo de operacin, genera las seales de control que se necesitan para introducir los operandos requeridos y controla la ejecucin de la instruccin. Por ejemplo: Suponiendo que la operacin especificada consiste en sumar 2 nmeros requeridos en 2 registros de la CPU y almacenar el resultado en un tercer registro de la CPU. Para efectuar esta instruccin, la CPU identificar los 2 registros y generar las seales de control adecuados para conectar los registros a la unidad de Aritmtica y Lgica (ULA). La CPU tambin hara que la ULA funcione como sumadora y dirija la salida hacia el tercer registro. El proceso de realizacin que especifica una funcin se denomina ciclo de ejecucin. Los nombres ciclos de bsqueda y ciclos de ejecucin derivan de la naturaleza cclica de la operacin de la computadora una vez que esta empieza a funcionar repite los ciclos de bsqueda y ejecucin de manera continua. Para hacer referencia a cada ciclo suele utilizar el trmino ciclo de mquina.

Pgina 26

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La CPU puede dividirse funcionalmente en 3 subunidades, la unidad de control, dedicada a los ciclos de bsqueda y ejecucin, la ULA que desempea funciones aritmticas como por ejemplo, suma y resta, de lgica por ejemplo AND, OR y un conjunto de registros dedicados al almacenamiento de datos en la CPU y a ciertas funciones de control: Registro e instrucciones de la CPU Registros Instrucciones Aritmtica y Lgica Movimientos de datos Operaciones de datos en bloque Instrucciones de control de programa Instrucciones de Entrada-Salida La CPU contiene un conjunto de localidades de almacenamiento temporal de datos de alta velocidad llamada registro. Algunos de los registros estn dedicados al control, y solo la unidad de control tiene acceso a ellos. Los registros restantes son los registros de uso general y el programador es el usuario que tiene acceso a ellos. Dentro del conjunto bsico de registros de control se deben incluir a los siguientes: Contador de programa (PC).

Pgina 27

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Registro de direcciones de la memoria (MAR). Registro de datos (RD). Registro de instrucciones (ER). Palabra de estado de programa (PSW). (PC): La funcin del PC consiste en seguir la pista de la instruccin por buscar (capturar) en el siguiente ciclo de mquina, por lo tanto contiene la direccin de la siguiente instruccin por ejecutar. El PC es modificado dentro del ciclo de bsqueda de la instruccin actual mediante la suma de una constante. El nmero que se agrega al PC es la longitud de una instruccin en palabras. Por lo tanto, si una instruccin tiene una palabra de longitud se agrega 1 al PC, si una instruccin tiene dos palabras de largo se agrega 2, y as sucesivamente.

1.2.1.2 Tipos CPU


Supercomputadoras: Una supercomputadora es el tipo de computadora ms potente y ms rpida que existe en un momento dado. Estas mquinas estn diseadas para procesar enormes cantidades de informacin en poco tiempo y son dedicadas a una tarea especfica. As mismo son las ms caras, sus precios alcanzan los 30 MILLONES de dlares y ms; y cuentan con un control de temperatura especial, esto para disipar el calor que algunos componentes alcanzan a tener. Unos ejemplos de tareas a las que son expuestas las supercomputadoras son los siguientes: 1. Bsqueda y estudio de la energa y armas nucleares.
Pgina 28

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

2. Bsqueda de yacimientos petrolferos con grandes bases de datos ssmicos. 3. El estudio y prediccin de tornados. 4. El estudio y prediccin del clima de cualquier parte del mundo. 5. La elaboracin de maquetas y proyectos de la creacin de aviones, simuladores de vuelo. Debido a su precio, son muy pocas las supercomputadoras que se construyen en un ao. Macro computadoras o Mainframes: Las macro computadoras son tambin conocidas como Mainframes. Los mainframes son grandes, rpidos y caros sistemas que son capaces de controlar cientos de usuarios simultneamente, as como cientos de dispositivos de entrada y salida. Los mainframes tienen un costo que va desde 350,000 dlares hasta varios millones de dlares. De alguna forma los mainframes son ms poderosos que las supercomputadoras porque soportan ms programas simultneamente. PERO las supercomputadoras pueden ejecutar un slo programa ms rpido que un mainframe. En el pasado, los Mainframes ocupaban cuartos completos o hasta pisos enteros de algn edificio, hoy en da, un Mainframe es parecido a una hilera de archiveros en algn cuarto con piso falso, esto para ocultar los cientos de cables de los perifricos, y su temperatura tiene que estar controlada. Minicomputadoras En 1960 surgi la minicomputadora, una versin ms pequea de la Macro computadora. Al ser orientada a tareas especficas, no

Pgina 29

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

necesitaba de todos los perifricos que necesita un Mainframe, y esto ayudo a reducir el precio y costos de mantenimiento. Las minicomputadoras, en tamao y poder de procesamiento, se encuentran entre los mainframes y las estaciones de trabajo. En general, una minicomputadora, es un sistema multiproceso (varios procesos en paralelo) capaz de soportar de 10 hasta 200 usuarios simultneamente. Actualmente se usan para almacenar grandes bases de datos, automatizacin industrial y aplicaciones multiusuario. Microcomputadoras o PCs Las microcomputadoras o Computadoras

Personales (PCs) tuvieron su origen con la creacin de los microprocesadores. Un microprocesador es una computadora en un chip, o sea un circuito integrado independiente. Las PCs son computadoras para uso personal y relativamente son baratas y actualmente se encuentran en las oficinas, escuelas y hogares. El trmino PC se deriva de que para el ao de 1981, IBM, sac a la venta su modelo IBM PC, la cual se convirti en un tipo de computadora ideal para uso personal, de ah que el trmino PC se estandariz y los clones que sacaron posteriormente otras empresas fueron llamados PC y compatibles, usando procesadores del mismo tipo que las IBM, pero a un costo menor y pudiendo ejecutar el mismo tipo de programas. Existen otros tipos de microcomputadoras, como la Macintosh, que no son compatibles con la IBM, pero que en muchos de los casos se les llaman tambin PCs, por ser de uso personal. En la actualidad existen variados tipos en el diseo de PCs: 1. Computadoras personales, con el gabinete tipo mini torre, separado del monitor.
Pgina 30

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

2. Computadoras personales porttiles Laptop o Notebook. 3. Computadoras personales ms comunes, con el gabinete horizontal, separado del monitor. 4. Computadoras personales que estn en una sola unidad compacta el monitor y el CPU. 5. Las computadoras laptops son aquellas computadoras que estn diseadas para poder ser transportadas de un lugar a otro. Se alimentan por medio de bateras recargables, pesan entre 2 y 5 kilos y la mayora trae integrado una pantalla de LCD (Liquid Crystal Display). 6. Estaciones de trabajo o Workstation Las estaciones de trabajo se encuentran entre las minicomputadoras y las macro computadoras (por el procesamiento). Las estaciones de trabajo son un tipo de computadoras que se utilizan para aplicaciones que requieran de poder de procesamiento moderado y relativamente capacidades de grficos de alta calidad. Son usadas para: Aplicaciones de ingeniera CAD (Diseo asistido por computadora) CAM (manufactura asistida por computadora) Publicidad Creacin de Software En redes, la palabra Workstation o estacin de trabajo se utiliza para referirse a cualquier computadora que est conectada a una red de rea local.
Pgina 31

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

1.2.1.3Caracteristicas CPU
Las caractersticas que un CPU tiene son: Memoria Unidad aritmtica lgica Unidad o procesador de control MEMORIA PRINCIPAL (interna o central). Se almacenan datos y programas, hay dos operaciones que se hacen en la memoria (lee y escribe) entonces se dice que es donde almacena, se lee y se escribe. Es un conjunto de clulas numeradas y dos registros especiales con los que realiza las transacciones. El registro de direccin que indica el nmero de la clula afectada y el de intercambio que contiene la informacin leda o la que hay que escribir en la clula de cuestin. La memoria central o simplemente memoria (interna o principal) se utiliza para almacenar informacin. En general, la informacin almacenada en memoria puede ser de dos tipos: las instrucciones de un programa y los datos con los que se operan las instrucciones.

Por ejemplo:

Pgina 32

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Para que un programa se pueda ejecutar (correr, rodar, funcionar,), debe ser situado en la memoria, en una operacin denominada carga (load) del programa. La memoria central de una computadora es una zona de almacenamiento organizada en centenares o millares de unidades de almacenamiento individual celdas. La unidad elemental de memoria se llama byte (octeto). Un byte tiene la capacidad de almacenar un carcter de informacin, y est formado por un conjunto de unidades ms pequeas de almacenamiento denominadas bits, que son dgitos binarios (0 1). Generalmente se acepta que un byte contiene ocho bits. Por consiguiente, si se desea almacenar la frase la computadora utilizara exactamente 23 bytes consecutivos de memoria. Obsrvese que adems de las letras, existen cuatro espacios en blanco y un punto (un espacio es un carcter que emplea tambin un byte). De modo similar, el nmero del pasaporte P57487891 ocupara 9 bytes. Estos datos se llaman alfanumricos y pueden constar de alfabeto, Dgitos o incluso caracteres especiales (smbolos: $,#,*,etc.). Mientras que cada carcter de un dato alfanumrico se almacena en un byte, la informacin numrica se almacena de un modo diferente. Los datos numricos ocupan 2,4 e incluso 8 bytes consecutivos, dependiendo del tipo de dato numrico. Existen dos conceptos importantes asociados a cada byte o posicin de memoria: su direccin y contenido. Cada celda o byte tiene asociada una nica direccin que indica su posicin relativa en memoria mediante la cual se puede acceder a la posicin para almacenar o recuperar informacin. La informacin almacenada en una posicin de memoria es su contenido. El contenido de estas direcciones o posiciones de memoria se llaman palabras, de modo que existen palabras de 8,16, 32, y 64 bits. Por consiguiente, si trabaja con una maquina de 32 bits, es decir, 32 dgitos, bien ceros o unos.
Pgina 33

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Siempre que una nueva informacin se almacena en una posicin, se destruye (desaparece) cualquier informacin que en ella hubiera y no se puede recuperar. La direccin es permanente y nica, el contenido puede cambiar mientras se ejecuta un programa. la memoria central de una computadora puede tener desde unos centenares de millares de bytes hasta millones de bytes. Como el byte es una unidad elemental de almacenamiento, se utilizan mltiplos para definir el tamao de la memoria central: Kilo-byte (KB o Kb) igual a 1.024 bytes (210) prcticamente se toman 1.000 y Mega byte(MB o Mb) igual a 1.024 x 1.024 bytes (220) prcticamente se considera un 1.000.000. Las computadoras personales tipo PC tienen memorias centrales desde 512 640 k aunque es frecuentemente ver PCs con memorias de 1,2, 4, 12, etc., Mb. Pasos que se hacen en la lectura: 1.- Almacenar la direccin de la clula en la que se encuentra la informacin a leer datos se almacena en el registro de direccin. 2.- Cambiar el registro de intercambio la informacin contenida en la clula apuntada por el registro de direccin. 3.- Transferir el contenido de registro de intercambio al registro de la CPU que corresponda.

Pasos para la escritura:

Pgina 34

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

1.- Transferir el registro de intercambio la informacin a escribir. 2.- Almacenar la segunda direccin de la clula receptora de la informacin en el registro de direccin. 3.- Cargar el contenido de registro de intercambio en la clula apuntada por el registro de direccin. UAL (UNIDAD ARITMETICA LOGICA). La unidad aritmtica lgica opera los datos que recibe siguiendo las indicaciones por la unidad de control. Esta unidad puede realizar operaciones aritmticas lgicas, por ejemplo: el de realizar la suma, la forma en que realiza la operacin. 1.- Se debe tener el cdigo de operacin que indique la operacin a efectuar en este caso el cdigo de suma. 2.- Direccin de la clula en la que se encuentra almacenado el primer sumando. 3.- Direccin del segundo sumando. 4.- Direccin de la clula en la que se almacena el resultado. Instrucciones para efectuar la suma. a) Cargar el primer operando en el acumulador. b) Sumar el segundo operando con el contenido del acumulador. c) Cargar el contenido del acumulador en la direccin del resultado.

Pgina 35

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

UNIDAD DE CONTROL (La unidad que va decidir controlar). La unidad de control es el autentico cerebro que controla y coordina el funcionamiento de la computadora. A raz de la interpretacin de las instrucciones que integran el programa esta unidad genera el conjunto de rdenes elementales necesarias para que se realice la tarea necesitada. Pasos para la unidad de control. 1. Se extrae de la memoria principal la instruccin a ejecutar esa informacin es almacenada en el contador de instrucciones, la informacin que se almacena es la prxima instruccin a ejecutar en el registro de instruccin propiamente dicha. 2.- Una vez conocido el cdigo de la operacin la unidad de control ya sabe que circuitos de la UAL deben de intervenir pueden establecerse las conexiones elctricas necesarias a travs del secuenciador. 3.- Extrae de la memoria principal los datos necesarios para ejecutar la instruccin en proceso 4.- Ordena la AUL que efecta las operaciones el resultado de este es depositado en el acumulador de la AUL. 5.- Si la instruccin a proporcionado nuevos datos estos son almacenados en la memoria principal. 6.- Incrementa en una unidad el contenido del contador de instrucciones a ejecutar. UNIDADES PERIFERICAS Unidades de comunicacin
Pgina 36

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Memorias auxiliares. Las unidades de comunicacin: Permiten el dialogo con el exterior que son las de entrada y salida ejemplo: teclado, monitor impresora, mouse. Las memorias auxiliares: Sirven para almacenar grandes volmenes de datos de forma permanente por ejemplo: Unidades de discos y cintas magnticas. La comunicacin entre los perifricos y la computadora se realizan atreves de los canales.

1.2.1.4 Funcionamiento

Funciones que realiza La Unidad central de proceso o CPU, se puede definir como: Un circuito microscpico que interpreta y ejecuta instrucciones. La CPU se ocupa del control y el proceso de datos en los ordenadores. Habitualmente, la CPU es un microprocesador fabricado en un chip, un nico trozo de silicio que contiene millones de componentes electrnicos. El microprocesador de la CPU est formado por una unidad aritmtico lgica que realiza clculos y comparaciones, y toma decisiones lgicas (determina si una afirmacin es cierta o falsa mediante las reglas del lgebra de Boole); por una serie de registros donde se almacena informacin temporalmente, y por una unidad de control que interpreta y ejecuta las instrucciones. Para aceptar rdenes del usuario, acceder a los datos y presentar los resultados, la CPU se comunica a travs de un conjunto de circuitos o conexiones llamado bus. El bus conecta la CPU a los dispositivos de
Pgina 37

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

almacenamiento (por ejemplo, un disco duro), los dispositivos de entrada (por ejemplo, un teclado o un ratn) y los dispositivos de salida (por ejemplo, un monitor o una impresora). Procesamiento de la CPU Una CPU procesa informacin almacenada en los bytes de la memoria. Esta informacin puede ser datos o instrucciones. Un dato es una representacin binaria de una letra, un nmero, o un color; mientras que una instruccin le dice a la CPU que hacer con ese dato, es decir si sumarlo, si restarlo, moverlo, etc. Como dijimos anteriormente, la CPU realiza tres operaciones bsicas con los datos: puede leerlos, procesarlos , y escribirlos en la memoria. Es decir que, la CPU necesita solo cuatro elementos para realizar dichas operaciones con los datos: Las instrucciones, un puntero a las instrucciones (Instruccin Pointer), algunos registros, y la unidad aritmtica lgica. El Instruccin Pointer le indica a la CPU en qu lugar de la memoria necesita ser ubicada la instruccin. Los Registros son lugares de almacenamiento temporario ubicados en la CPU. Un registro contiene datos que esperan ser procesados por cualquier instruccin, o datos que ya han sido procesados, como por ejemplo, la suma o resta de algn nmero, etc. La unidad aritmtica lgica es una especie de calculadora que ejecuta funciones matemticas y lgicas dedicadas a las instrucciones. Por otro lado, la CPU contiene algunas partes adicionales que ayudan a dichos componentes principales a realizar el trabajo:

Pgina 38

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Un buscador de instrucciones (fetch), que recoge las instrucciones de la RAM o un rea de memoria localizada en la CPU. Un decodificador de instrucciones, que toma la instruccin desde el buscador y la traslada hasta que la CPU la entienda. Luego determina cuales son los pasos necesarios para cumplir con dicha instruccin. La unidad de control, maneja y coordina todas las operaciones del chip. Este le permite saber a la unidad aritmtica lgica cuando debe calcular, al buscador cuando debe grabar una cifra, y al decodificador cuando trasladar la cifra dentro de una instruccin.

1.2.2 Memoria
El propsito del almacenamiento es guardar datos que la computadorano est usando. El almacenamiento tiene tres ventajas sobre la memoria: 1. Hay ms espacio en almacenamiento que en memoria. 2. El almacenamiento retiene su contenido cuando se apaga el computador 3. El almacenamiento es ms barato que la memoria. El medio de almacenamiento ms comn es el disco magntico. El dispositivo que contiene al disco se llama unidad de disco (drive). La mayora de las computadoras personales tienen un disco durono removible. Adems usualmente hay una o dos unidades de disco flexible, las cuales le permiten usar discos flexibles removibles. El disco duro normalmente puede guardar muchos ms datos que un disco flexible y por eso se usa disco duro como el archivero principal de la computadora. Los discos flexibles se usan para cargar programasnuevos, o datos al disco duro, intercambiar datos con otros usuarios o hacer una copia de respaldo de los datos que estn en el disco duro. Una computadora puede leer y escribir informacin en un disco duro mucho ms rpido que en el disco flexible. La diferencia de velocidad se debe a que

Pgina 39

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

un disco duro est construido con materiales ms pesados, gira mucho ms rpido que un disco flexible y est sellado dentro de una cmara de aire, las partculas de polvo no pueden entrar en contacto con las cabezas. La memorizacin consiste en la capacidad de registrar sea una cadena de caracteres o de instrucciones (programa) y tanto volver a incorporarlo en determinado procesocomo ejecutarlo bajo ciertas circunstancias. El computador dispone de varios dispositivos de memorizacin:

La memoria ROM La memoria RAM Las memorias externas. Un aspecto importante de la memorizacin es la capacidad de hacer ese registro en medios permanentes, bsicamente los llamados "archivos" grabados en disco.

El acumulador

1.2.2.1Arquitecturas
Arquitectura de la memoria (ROM) La arquitectura (estructura) interna de un ci-rom es muy compleja y no necesitamos conocer todos sus detalles. Sin embargo es constructivo observar un diagrama simplificado de la estructura interna. Existen cuatro partes bsicas: decodificador de renglones, arreglo de registros y buffer de salida. Arreglo de registros. El arreglo de registros almacena los datos que han sido programados en la ROM. Cada registro contiene un nmero de celdas de memoria que es igual al tamao de la palabra. En este caso, cada registro almacena una palabra de 8 bits. Los registros se disponen en un arreglo de matriz< cuadrada que es

Pgina 40

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

comn a muchos circuitos de semiconductor. Podemos especificar la posicin de cada registro como una ubicada en un rengln y una columna especficos. Las 8 salidas de datos de cada registro se conectan a un canal de datos interno que corre atreves de todo el circuito. Cada registro tiene dos entradas de habilitacin (e); ambas tienen que ser altas a fin de que los datos del registro sean colocados en el canal. Decodificadores de direcciones. El cdigo de direccin aplicado a3, a2, a1, a0, determina que registro ser habilitado para colocar su palabra de datos en 8 bits en el canal. Los bits de direccin a1, a0, se alimentan de un decodificador uno de 4 que activa una lnea de seleccin de rengln, y los bits de direccin a3, a2, se alimentan de un segundo decodificador uno de cuatro que activa una lnea de seleccin de columna. Solamente un registro estar en el rengln y la columna seleccionados por las entradas de difraccin, y estar habilitado. Buffer de salida. El registro habilitado por las entradas de seleccin coloca el dato que tiene sobre el canal de datos. Estos datos entraran en los buffers de salida mismos que se encargan de trasmitirlos hacia las salidas externas siempre y cuando cs este en bajo. Si cs esta en alto, los buffers de salida se encuentran en el estado de alta impedancia, con lo que d7 hasta d0 estarn flotando. Arquitectura de la memoria (RAM) Como sucede con la ROM, es til pensar que la RAM consta de varios registros, cada uno de los cuales almacenan una sola palabra de datos y tiene una direccin nica. Las RAM comnmente vienen con capacidades de palabras de 1k, 4k, 8k, 16k, 64k, 128k, 256k, y 1024k, y tamaos de palabras de 1, 4, u 8 bits. Como veremos ms adelante, la capacidad de las palabras y
Pgina 41

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

el tamao de estas puede extenderse combinando circutos integrados de memoria.

Operacin de lectura. El cdigo de direccin selecciona un registro del circuito de memoria para leer o escribir. A fin de leer el contenido de registro seleccionado, la entrada lectura/escritura (r/-w)* debe ser un 1. Adems, la entrada (cs) seleccin de ci debe ser activada (un 0 de este caso). La combinacin de r/-w es igual a 1 y cs es igual a 0 habilita los buffers de salida de manera que el contenido de registro seleccionado aparecer en las cuatro salidas de datos. r/-w igual a 1 tambin deshabilita los buffers de entrada de manera que las entradas de datos no afecten la memoria durante la operacin de lectura. Operacin de escritura. Para escribir una nueva palabra de cuatro bits en el registro seleccionado se requiere que r/-w igual a 0 y cs igual 0. Esta combinacin habilita los buffers de entrada de manera que la palabra de cuatro bits aplicada a las entradas de datos se cargara en el registro seccionado. r/-w igual a 0 tambin deshabilita los buffers de salida que son de tres estados, de manera que las salidas de datos se encuentran en el estado de alta-z, durante una operacin de escritura. La operacin de escritura, desde luego, destruye la palabra que antes estaba almacenada en la direccin. Seleccin de ci. Muchos circuitos de memoria tienen una o ms entradas cs que se usan para habilitar o deshabilitar el circuito en su totalidad. En el modo deshabilitado todas las salidas y entradas de datos se deshabilitas (alta-z) de manera que no
Pgina 42

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

puede tener lugar no la operacin de lectura ni de escritura. En este modo en contenido de la memoria no se afecta. La razn para tener entradas cs ser ms clara cuando se combinen ci de memoria para tener mayores memorias. Observe que muchos fabricantes llaman a estas entradas ce (habilitacin de circuito). Cuando las entradas cs o ce se encuentran en un estado activo, se dice que el ci de memoria a sido seleccionado; de otro modo se dice que no est seleccionado. Muchos ci de memoria estn diseados para consumir una potencia mucho menor cuando estn seleccionados. en sistemas de memoria grandes, para una operacin dada de memoria, sern seleccionados una o ms ci de memoria mientras que los dems no. Terminales comunes de entrada/ salida. A fin de conservar terminales en un encapsulado de ci, los fabricantes a menudo combinan las funciones de entradas y salida de datos utilizando terminales comunes de entrada/salida. La entrada r/-w controla la funcin de estas terminales e/s. durante una operacin de lectura, las terminales de entrada y salida actan como salida de datos que reproducen el contenido de la localidad de direccin seleccionada. Durante una operacin de escritura, las terminales de s/e actan como entrada de datos. a las cuales se aplican los datos al ser escritos. Arquitectura de la memoria (eprom) ROM programable y borrable. Una eprom puede ser programada por el usuario y tambin puede borrarse y reprogramarse tantas veces como desee. Una vez programada, la eprom es una memoria no voltil que contendr sus datos almacenados indefinidamente. El proceso para programar una eprom implica la aplicacin de niveles de voltaje especiales (comnmente en un orden de 10 a 25 volts) a las entradas adecuadas del circuito en una cantidad de tiempo especificada (por lo general
Pgina 43

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

50 minutos) por la localidad de direccin. El proceso de programacin generalmente es efectuado por un circuito especial de programacin que est separando del circuito en el cual la eprom eventualmente trabajara. El proceso de programacin completo puede llevar barios minutos para un microcircuito eprom. En una eprom las celdas de almacenamiento son transistores mosfet que tienen una compuerta de cilicio sin ninguna conexin elctrica (es decir, una compuerta flotante). en un estado normal, cada transistor est apagado y cada celda guarda un 1 lgico un transistor puede encenderse mediante la aplicacin de un curso de programacin de alto voltaje, el cual inyecta electrones de alta energa en la regin formada por la compuerta flotante. Estos electrones permanecen en esta regin una vez que ha finalizado el pulso ya que no existe ninguna trayectoria de descarga. Una vez que sea programado una celda de la eprom se puede borrar su contenida exponiendo la eprom a la luz ultravioleta (uv), la cual se aplica a travs de la ventana que se encuerta sobre el encapsulado del circuito. La luz (uv) produce una foto corriente que va desde la compuerta flotante hacia el sustrato de cilicio; con esto se apaga el transistor y se lleva de nuevo la celda hacia el estado uno lgico. Este proceso de borrado requiere entre 15 a 20 minutos de exposicin a los rayos (uv). Desafortunadamente, no existe ninguna forma de borrar solo algunas celdas; la luz (uv) borra todas las celdas al mismo tiempo por lo que una eprom barrada almacena solamente unos lgicos. Una vez borrada puede volverse a programar.

1.2.2.2 Tipos Memorias


MEMORIA RAM RAM: Siglas de Random Access Memory, un tipo de memoria a la que se puede acceder de forma aleatoria; esto es, se puede acceder a cualquier byte

Pgina 44

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de la memoria sin pasar por los bytes precedentes. RAM es el tipo ms comn de memoria en las computadoras y en otros dispositivos, tales como las impresoras. Hay dos tipos bsicos de RAM: DRAM (Dynamic RAM), RAM dinmica SRAM (Static RAM), RAM esttica Los dos tipos difieren en la tecnologa que usan para almacenar los datos. La RAM dinmica necesita ser refrescada cientos de veces por segundo, mientras que la RAM esttica no necesita ser refrescada tan frecuentemente, lo que la hace ms rpida, pero tambin ms cara que la RAM dinmica. Ambos tipos son voltiles, lo que significa que pueden perder su contenido cuando se desconecta la alimentacin.

En el lenguaje comn, el trmino RAM es sinnimo de memoria principal, la memoria disponible para programas. En contraste, ROM (Read Only Memory) se refiere a la memoria especial generalmente usada para almacenar programas que realizan tareas de arranque de la mquina y de diagnsticos. La mayora de los computadores personales tienen una pequea cantidad de ROM (algunos Kbytes). De hecho, ambos tipos de memoria (ROM y RAM) permiten acceso aleatorio. Sin embargo, para ser precisos, hay que referirse a la memoria RAM como memoria de lectura y escritura, y a la memoria ROM como memoria de solo lectura. Se habla de RAM como memoria voltil, mientras que ROM es memoria novoltil.

Pgina 45

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La mayora de los computadores personales contienen una pequea cantidad de ROM que almacena programas crticos tales como aquellos que permiten arrancar la mquina (BIOS CMOS). Adems, las ROM son usadas de forma generalizada en calculadoras y dispositivos perifricos tales como impresoras laser, cuyas fonts estn almacenadas en ROMs. Tipos de memoria RAM V RAM: Siglas de Vdeo RAM, una memoria de propsito especial usada por los adaptadores de vdeo. A diferencia de la convencional memoria RAM, la VRAM puede ser accedida por dos diferentes dispositivos de forma simultnea. Esto permite que un monitor pueda acceder a la VRAM para las actualizaciones de la pantalla al mismo tiempo que un procesador grfico suministra nuevos datos. VRAM permite mejores rendimientos grficos aunque es ms cara que la una RAM normal. SIMM: Siglas de Single In line Memory Module, un tipo de encapsulado consistente en una pequea placa de circuito impreso que almacena chips de memoria, y que se inserta en un zcalo SIMM en la placa madre o en la placa de memoria. Los SIMM son ms fciles de instalar que los antiguos chips de memoria individuales, y a diferencia de ellos son medidos en bytes en lugar de bits. El primer formato que se hizo popular en los computadores personales tena 3.5 de largo y usaba un conector de 32 pins. Un formato ms largo de 4.25, que usa 72 contactos y puede almacenar hasta 64 megabytes de RAM es actualmente el ms frecuente. Un PC usa tanto memoria de nueve bits (ocho bits y un bit de paridad, en 9 chips de memoria RAM dinmica) como memoria de ocho bits sin paridad. En el primer caso los ocho primeros son para datos y el noveno es para el chequeo de paridad.
Pgina 46

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

DIMM: Siglas de Dual In line Memory Module, un tipo de encapsulado, consistente en una pequea placa de circuito impreso que almacena chips de memoria, que se inserta en un zcalo DIMM en la placa madre y usa generalmente un conector de 168 contactos. DIP: Siglas de Dual In line Package, un tipo de encapsulado consistente en almacenar un chip de memoria en una caja rectangular con dos filas de pines de conexin en cada lado. RAM Disk: Se refiere a la RAM que ha sido configurada para simular un disco duro. Se puede acceder a los ficheros de un RAM disk de la misma forma en la que se acceden a los de un disco duro. Sin embargo, los RAM disk son aproximadamente miles de veces ms rpidos que los discos duros, y son particularmente tiles para aplicaciones que precisan de frecuentes accesos a disco. Dado que estn constituidos por RAM normal. Los RAM disk pierden su contenido una vez que la computadora es apagada. Para usar los RAM Disk se precisa copiar los ficheros desde un disco duro real al inicio de la sesin y copiarlos de nuevo al disco duro antes de apagar la mquina. Observe que en el caso de fallo de alimentacin elctrica, se perdern los datos que hubiera en el RAM disk. El sistema operativo DOS permite convertir la memoria extendida en un RAM Disk por medio del comando VDISK, siglas de Virtual DISK, otro nombre de los RAM Disks. SRAM
Pgina 47

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Siglas de Static Random Access Memory, es un tipo de memoria que es ms rpida y fiable que la ms comn DRAM (Dynamic RAM). El trmino esttica viene derivado del hecho que necesita ser refrescada menos veces que la RAM dinmica. Los chips de RAM esttica tienen tiempos de acceso del orden de 10 a 30 nanosegundos, mientras que las RAM dinmicas estn por encima de 30, y las memorias bipolares y ECL se encuentran por debajo de 10 nanosegundos. Un bit de RAM esttica se construye con un --- como circuito flip-flop que permite que la corriente fluya de un lado a otro basndose en cul de los dos transistores es activado. Las RAM estticas no precisan de circuitera de refresco como sucede con las RAM dinmicas, pero precisan ms espacio y usan ms energa. La SRAM, debido a su alta velocidad, es usada como memoria cach. DRAM Siglas de Dynamic RAM, un tipo de memoria de gran capacidad pero que precisa ser constantemente refrescada (re-energizada) o perdera su contenido. Generalmente usa un transistor y un condensador para representar un bit Los condensadores debe de ser energizados cientos de veces por segundo para mantener las cargas. A diferencia de los chips firmware (ROMs, PROMs, etc.) las dos principales variaciones de RAM (dinmica y esttica) pierden su contenido cuando se desconectan de la alimentacin. Contrasta con la RAM esttica. Algunas veces en los anuncios de memorias, la RAM dinmica se indica errneamente como un tipo de encapsulado; por ejemplo se venden DRAMs, SIMM y SIPs, cuando debera decirse DIPs, SIMM y SIPs los tres tipos de encapsulado tpicos para almacenar chips de RAM dinmica. Tambin algunas veces el trmino RAM (Random Access Memory) es utilizado para referirse a la
Pgina 48

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

DRAM y distinguirla de la RAM esttica (SRAM) que es ms rpida y ms estable que la RAM dinmica, pero que requiere ms energa y es ms cara SDRAM Siglas de Synchronous DRAM, DRAM sncrona, un tipo de memoria RAM dinmica que es casi un 20% ms rpida que la RAM EDO. SDRAM entrelaza dos o ms matrices de memoria interna de tal forma que mientras que se est accediendo a una matriz, la siguiente se est preparando para el acceso. SDRAM-II es tecnologa SDRAM ms rpida esperada para 1998. Tambin conocido como DDR DRAM o DDR SDRAM (Doubl Data Rate DRAM o SDRAM), permite leer y escribir datos a dos veces la velocidad bs. FPM : Siglas de Fast Page Mode, memoria en modo paginado, el diseo ms comn de chips de RAM dinmica. El acceso a los bits de memoria se realiza por medio de coordenadas, fila y columna. Antes del modo paginado, era ledo pulsando la fila y la columna de las lneas seleccionadas. Con el modo pagina, la fila se selecciona solo una vez para todas las columnas (bits) dentro de la fila, dando como resultado un rpido acceso. La memoria en modo paginado tambin es llamada memoria de modo Fast Page o memoria FPM, FPM RAM, FPM DRAM. El trmino fast fu aadido cuando los ms nuevos chips empezaron a correr a 100 nanoseconds e incluso ms. EDO Siglas de Extended Data Output, un tipo de chip de RAM dinmica que mejora el rendimiento del modo de memoria Fast Page alrededor de un 10%. Al ser un subconjunto de Fast Page, puede ser substituida por chips de modo Fast Page.

Pgina 49

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Sin embargo, si el controlador de memoria no est diseado para los ms rpidos chips EDO, el rendimiento ser el mismo que en el modo Fast Page. EDO elimina los estados de espera manteniendo activo el buffer de salida hasta que comienza el prximo ciclo. BEDO (Burst EDO) es un tipo ms rpido de EDO que mejora la velocidad usando un contador de direccin para las siguientes direcciones y un estado pipeline que solapa las operaciones. RAM Esttica o SDRAM, que no necesita ser restaurada, por lo que se vuelve ms rpida pero tambin ms costosa que la DRAM. La SDRAM surgi junto con los microprocesadores Pentium II, pero son utilizadas tambin para Pentium III, AMD K6, K62, K63, Athlon, Duron y dems variantes. Pueden funcionar a 66, 100 o a 133 MHz (PC 66?, PC 100? o PC 133? respectivamente) En trminos prcticos, es buena para la mayora de los usos de empresa o domsticos, y es ms fcil de utilizar. MEMORIA ROM ROM es el acrnimo de Read-Only Memory (memoria de slo lectura). Es una memoria de semiconductor no destructible, es decir, que no se puede escribir sobre ella, y que conserva intacta la informacin almacenada, incluso en el caso de interrupcin de corriente (memoria no voltil). La ROM suele almacenar la configuracin del sistema o el programa de arranque del ordenador. La memoria de slo lectura o ROM es utilizada como medio de almacenamiento de datos en los ordenadores. Debido a que no se puede escribir fcilmente, su uso principal reside en la distribucin de programas que estn estrechamente ligados al soporte fsico del ordenador, y que seguramente no necesitarn actualizacin. Por ejemplo, una tarjeta grfica puede realizar algunas funciones bsicas a travs de los programas contenidos en la ROM.
Pgina 50

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Hay una tendencia a poner cada vez menos programas en la esttica ROM, y ms en los discos, haciendo los cambios mucho ms fciles. Los ordenadores domsticos a comienzos de los 80 venan con todo su sistema operativo en ROM. No haba otra alternativa razonable ya que las unidades de disco eran generalmente opcionales. La actualizacin a una nueva versin significa usar un soldador o un grupo de interruptores DIP y reemplazar el viejo chip de ROM por uno nuevo. En el ao 2000 los sistemas operativos en general ya no van en ROM. Todava los ordenadores pueden dejar algunos de sus programas en memoria ROM, pero incluso en este caso, es ms frecuente que vaya en memoria flash. Los telfonos mviles y los asistentes personales digitales (PDA) suelen tener programas en memoria ROM (o, por lo menos en memoria flash). Algunas de las consolas de videojuegos que utilizan programas basados en la memoria ROM son la Super Nintendo, la Nintendo 64, la Mega Drive o la Game Boy. Estas memorias ROM, pegadas a cajas de plstico aptas para ser utilizadas e introducidas repetidas veces, son conocidas como cartuchos. Por extensin la palabra ROM puede referirse tambin a un archivo de datos que contenga una imagen del programa que se distribuye normalmente en memoria ROM, como una copia de un cartucho de videojuego. Una razn de que todava se utilice la memoria ROM para almacenar datos es la velocidad ya que los discos son ms lentos. An ms importante, no se puede leer un programa que es necesario para ejecutar un disco desde el propio disco. Por lo tanto, la BIOS, o el sistema de arranque oportuno del ordenador normalmente se encuentran en una memoria ROM. La memoria RAM normalmente es ms rpida de leer que la mayora de las memorias ROM, por lo tanto el contenido ROM se suele trasvasar normalmente a la memoria RAM cuando se utiliza. Sobre todo lectura

Pgina 51

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Adems de los chips clsicos de memoria ROM puros, hay ROM llamada de sobre todo lectura (del ingls, Read-Mostly Memory). Esta pueden ser escrita durante su realizacin, pero adems se puede cambiar su contenido despus. Algunos ejemplos: Memoria PROM Memoria EPROM Memoria EEPROM Memoria flash PROM es el acrnimo de Programable Read-Only Memory (ROM

programable). Es una memoria digital donde el valor de cada bit depende del estado de un fusible (o antifusible), que puede ser quemado una sola vez. Estas memorias son utilizadas para grabar datos permanentes en cantidades menores a las ROMs, o cuando los datos deben cambiar en muchos o todos los casos. EPROM son las siglas de Erasable Programable Read-Only Memory (ROM borrable programable). Es un tipo de chip de memoria ROM inventado por el ingeniero Dov Frohman que retiene los datos cuando la fuente de energa se apaga. En otras palabras, es no voltil. EEPROM son las siglas de electrically-erasable programable read-only Memory (ROM programable y borrable elctricamente), en espaol o castellano se suele referir al hablar como E PROM y en ingls E-Squared-PROM. Es un tipo de memoria ROM que puede ser programado, borrado y reprogramado elctricamente, a diferencia de la EPROM que ha de borrarse mediante rayos ultravioletas. Aunque una

Pgina 52

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

EEPROM puede ser leda un nmero ilimitado de veces, slo puede ser borrada y reprogramada entre 100.000 y 1.000.000 de veces. La Memoria flash es una forma evolucionada de la memoria EEPROM que permite que mltiples posiciones de memoria sean escritas o borradas en una misma operacin de programacin mediante impulsos elctricos, frente a las anteriores que slo permite escribir o borrar una nica celda cada vez. Por ello, flash permite funcionar a velocidades muy superiores cuando los sistemas emplean lectura y escritura en diferentes puntos de esta memoria al mismo tiempo.

1.2.2.3Caracteristicas Memorias
Concepto y caractersticas de una Memoria (RAM y ROM) Hablaremos un poco sobre el concepto y las caractersticas de una memoria, sea de tipo RAM o de tipo ROM, que aunque tengan diferencias, siguen siendo un par de dispositivos electrnicos con diminutas diferencias pero con similares tareas. El concepto bsico de una memoria fsica es: Se refiere a componentes de un ordenador, dispositivos y medios de grabacin que retienen datos informticos durante algn intervalo de tiempo. Principalmente, partimos de la idea de que es un dispositivo electrnico perteneciente a la unidad central de proceso (C.P.U.), para lo que cualquier dato contenido en la misma es accesible casi instantneamente. Posee un tamao limitado y su costo es elevado, por lo que se suele complementar con la llamada memoria extrema o secundaria; est constituida de semiconductores de silicio y circuitos electrnicos. Los datos se almacenan en ella en un conjunto de casilleros numerados desde 0 en orden creciente (0, 1, 2, 3, 4,50+n).
Pgina 53

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Algunas de las caractersticas fundamentales de las memorias (de cualquier tipo) son las que a continuacin detallar detenidamente en las siguientes lneas de texto Volatilidad Se dice que la informacin almacenada en una memoria es voltil siempre y cuando corra el riesgo de verse alterada en caso de que se produzca algn fallo de suministro de energa elctrica (memorias biestables). No son voltiles aquellas en las cuales la informacin, independientemente de que exista algn fallo en el fluido elctrico, permanece inalterada. Dicho de otra manera, cualquier de stas dos memorias (RAM y ROM) es voltil por su incapacidad de permanecer inalterada de cara a cualquier fallo elctrico que presente la misma. Por sta simple razn especfica, las memorias RAM y ROM son voltiles. Tiempo de Acceso Es el tiempo que transcurre desde el instante en que se lanza la operacin de lectura en la memoria y el instante en que se dispone de la primera informacin buscada. En la memoria principal, este tiempo es, en principio, independiente de la direccin en la que se encuentre la informacin a la cual queremos acceder. Se puede ir un poco ms al grano diciendo que el tiempo de acceso es el tiempo requerido o necesitado para realizar cualquier operacin, sea lectura o escritura. Es simplemente eso, el tiempo que se solicita a la memoria para poder ejecutar cualquier operacin especfica. Capacidad

Pgina 54

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La capacidad de una memoria (RAM y ROM) es el nmero de posiciones de un sistema, o dicho de otra manera, nmero de informaciones que puede contener una memoria. La capacidad total de memoria ser un dato esencial para calibrar la potencia de un computador. La capacidad de la memoria se mide en mltiplos de byte (8 bits): kilobytes (1.024 bytes) y megabytes (1.024 kilobytes). Si bien es cierto, aqu s se aplica la frase de a mayor capacidad, mayor velocidad. A la hora de escoger una memoria, intenta escoger un valor que sea ptimo (sea de 512 megabytes, 1 gigabyte o as) para que tengas mejor rendimiento en tu computadora.

1.2.2.4 Funcionamiento Memorias


La memoria RAM es en la que se depositan los programas para arrancar viene en mdulos que puedes cambiar en la placa base DDR-DDR2. La memoria ROM o cache es la que tienes en este momento activa es la que ocupa lo ejecutado, lo presente una vez que cambies de pantalla y no puedas volver a ella sin volver a cargarla quiere decir que ya no est presente que no la tienes en cache. La memoria flash BIOS es la que contiene activa o des activamente la placa madre y sus componentes se mantienen por una pila de reloj en la placa madre..

FUNCIONAMIENTO DE LAS MEMORIAS RAM.

La memoria principal o RAM (acrnimo de Random Access Memory, Memoria de Acceso Aleatorio) es donde el ordenador guarda los datos que estutilizando en el momento presente. Se llama de acceso aleatorio porque el
Pgina 55

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

procesador accede a la informacin que est en la memoria en cualquier punto sin tener que accedera la informacin anterior y posterior. Es la memoria que se actualiza constantementemientras el ordenador est en uso y que pierde sus datos cuando el ordenador se apaga. Proceso de carga en la memoria RAM: Cuando las aplicaciones se ejecutan, primeramente deben ser cargadas enmemoria RAM. El procesador entonces efecta accesos a dicha memoria para cargar instrucciones y enviar o recoger datos. Reducir el tiempo necesario para acceder a la memoria, ayuda a mejorar las prestaciones del sistema. La diferencia entre la RAM yotros tipos de memoria de almacenamiento, como los disquetes o discos duros, es que laRAM es mucho ms rpida, y se borra al apagar el ordenador. Es una memoria dinmica, lo que indica la necesidad de recordar los datos ala memoria cada pequeo periodo de tiempo, para impedir que esta pierda lainformacin. Eso se llama Refresco. Cuando se pierde la alimentacin, la memoria pierde todos los datos. Random Access, acceso aleatorio, indica que cada posicin de memoria puede ser leda o escrita en cualquier orden. Lo contrario seria el accesosecuencial, en el cual los datos tienen que ser ledos o escritos en un orden predeterminado. Las memorias poseen la ventaja de contar con una mayor velocidad, mayor capacidad de almacenamiento y un menor consumo. En contra partida presentan el CPU, Memoria y Disco Duro. Los datos de instrucciones cuando se carga un programa, se carga en memoria. (DMA) El inconveniente es que precisan una electrnica especial para su utilizacin, la funcin de esta electrnica es generar el refresco de la memoria. La necesidad de los refrescos de las memorias dinmicas se debe al funcionamiento de las mismas, ya que este se basa en generar durante un tiempo la informacin que
Pgina 56

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

contiene. Transcurrido este lapso, la seal que contena la clula biestable se va perdiendo. Para que no ocurra esta perdida, es necesario que antes que transcurra el tiempo mximo que la memoria puede mantener la seal se realice una lectura del valor que tiene y se recargue la misma. Es preciso considerar que a cada bit de la memoria le corresponde un pequeo condensador al que le aplicamos una pequea carga elctrica y que mantienen durante un tiempo en funcin de la constante de descarga. Generalmente el refresco de memoria se realiza cclicamente y cuando esta trabajando el DMA. El refresco de la memoria en modo normal esta a cargo del controlador del canal que tambin cumple la funcin de optimizar el tiempo requerido para la operacin del refresco. Posiblemente, en ms de una ocasin en el ordenador aparecen errores de en la memoria debido a que las memorias que se estn utilizando son de una velocidad inadecuada que se descargan antes de poder ser refrescadas. Las posiciones de memoria estn organizadas en filas y en columnas. Cuando se quiere acceder a la RAM se debe empezar especificando la fila, despus la columna y por ltimo se debe indicar si deseamos escribir o leer en esa posicin. En ese momento la RAM coloca los datos de esa posicin en la salida, si el acceso es de lectura o coge los datos y los almacena en la posicin seleccionada, si el acceso es de escritura. La cantidad de memoria Ram de nuestro sistema afecta notablemente a las prestaciones, fundamentalmente cuando se emplean sistemas operativos actuales. En general, y sobretodo cuando se ejecutan mltiples aplicaciones, puede que la demanda de memoria sea superior a la realmente existente, con lo que el sistema operativo fuerza al procesador a simular dicha memoria con el disco duro (memoria virtual). Una buena inversin para aumentar las prestaciones ser por tanto poner la mayor cantidad de RAM posible, con lo que minimizaremos los accesos al disco duro.

Pgina 57

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Los sistemas avanzados emplean RAM entrelazada, que reduce los tiempos de acceso mediante la segmentacin de la memoria del sistema en dos bancos coordinados. Durante una solicitud particular, un banco suministra la informacin al procesador, mientras que el otro prepara datos para el siguiente ciclo; en el siguiente acceso, se intercambian los papeles. Los mdulos habituales que se encuentran en el mercado, tienen unos tiempos de acceso de 60 y 70 ns (aquellos de tiempos superiores deben ser desechados por lentos). Es conveniente que todos los bancos de memoria estn constituidos por mdulos con el mismo tiempo de acceso y a ser posible de 60 ns. Hay que tener en cuenta que el bus de datos del procesador debe coincidir con el de la memoria, y en el caso de que no sea as, esta se organizar en bancos, habiendo de tener cada banco la cantidad necesaria de mdulos hasta llegar al ancho buscado. Por tanto, el ordenador slo trabaja con bancos completos, y stos slo pueden componerse de mdulos del mismo tipo y capacidad. Como existen restricciones a la hora de colocar los mdulos, hay que tener en cuenta que no siempre podemos alcanzar todas las configuraciones de memoria. Tenemos que rellenar siempre el banco primero y despus el banco nmero dos, pero siempre rellenando los dos zcalos de cada banco (en el caso de que tengamos dos) con el mismo tipo de memoria. Combinando diferentes tamaos en cada banco podremos poner la cantidad de memoria que deseemos. Tipos de memorias RAM: DRAM: Acrnimo de Dynamic Random Access Memory, o simplemente RAM ya que es la original, y por tanto la ms lenta. Usada hasta la poca del 386, su velocidad de refresco tpica es de 80 70 nanosegundos (ns), tiempo ste que tarda en vaciarse para poder dar entrada a la siguiente serie de datos. Por ello, la ms rpida es la de 70 ns. Fsicamente, aparece en forma de DIMMs o de SIMMs, siendo estos ltimos de 30 contactos.

Pgina 58

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

FPM (Fast Page Mode): A veces llamada DRAM, puesto que evoluciona directamente de ella, y se usa desde hace tanto que pocas veces se las diferencia. Algo ms rpida, tanto por su estructura (el modo de Pgina Rpida) como por ser de 70 60 ns. Es lo que se da en llamar la RAM normal o estndar. Usada hasta con los primeros Pentium, fsicamente aparece como SIMMs de 30 72 contactos (los de 72 en los Pentium y algunos 486). Para acceder a este tipo de memoria se debe especificar la fila (pgina) y seguidamente la columna. Para los sucesivos accesos de la misma fila slo es necesario especificar la columna, quedando la columna seleccionada desde el primer acceso. Esto hace que el tiempo de acceso en la misma fila (pgina) sea mucho ms rpido. Era el tipo de memoria normal en los ordenadores 386, 486 y los primeros Pentium y lleg a alcanzar velocidades de hasta 60 ns. Se presentaba en mdulos SIMM de 30 contactos (16 bits) para los 386 y 486 y en mdulos de 72 contactos (32 bits) para las ltimas placas 486 y las placas para Pentium. EDO o EDO-RAM: Extended Data Output-RAM. Evoluciona de la FPM. Permite empezar a introducir nuevos datos mientras los anteriores estn saliendo (haciendo su Output), lo que la hace algo ms rpida (un 5%, ms o menos). Mientras que la memoria tipo FPM slo poda acceder a un solo byte (una instruccin o valor) de informacin de cada vez, la memoria EDO permite mover un bloque completo de memoria a la cach interna del procesador para un acceso ms rpido por parte de ste. La estndar se encontraba con refrescos de 70, 60 50 ns. Se instala sobre todo en SIMMs de 72 contactos, aunque existe en forma de DIMMs de 168. La ventaja de la memoria EDO es que mantiene los datos en la salida hasta el siguiente acceso a memoria. Esto permite al procesador ocuparse de otras tareas sin tener que atender a la lenta memoria. Esto es, el procesador selecciona la posicin de memoria, realiza otras tareas y cuando vuelva a consultar la DRAM los datos en la salida seguirn siendo vlidos. Se presenta
Pgina 59

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

en mdulos SIMM de 72 contactos (32 bits) y mdulos DIMM de 168 contactos (64 bits). SDRAM: Sincronic-RAM. Es un tipo sncrono de memoria, que, lgicamente, se sincroniza con el procesador, es decir, el procesador puede obtener informacin en cada ciclo de reloj, sin estados de espera, como en el caso de los tipos anteriores. Slo se presenta en forma de DIMMs de 168 contactos; es la opcin para ordenadores nuevos. SDRAM funciona de manera totalmente diferente a FPM o EDO. DRAM, FPM y EDO transmiten los datos mediante seales de control, en la memoria SDRAM el acceso a los datos esta sincronizado con una seal de reloj externa. La memoria EDO est pensada para funcionar a una velocidad mxima de BUS de 66 Mhz, llegando a alcanzar 75MHz y 83 MHz. Sin embargo, la memoria SDRAM puede aceptar velocidades de BUS de hasta 100 MHz, lo que dice mucho a favor de su estabilidad y ha llegado a alcanzar velocidades de 10 ns. Se presenta en mdulos DIMM de 168 contactos (64 bits). El ser una memoria de 64 bits, implica que no es necesario instalar los mdulos por parejas de mdulos de igual tamao, velocidad y marca PC-100 DRAM: Este tipo de memoria, en principio con tecnologa SDRAM, aunque tambin la habr EDO. La especificacin para esta memoria se basa sobre todo en el uso no slo de chips de memoria de alta calidad, sino tambin en circuitos impresos de alta calidad de 6 o 8 capas, en vez de las habituales 4; en cuanto al circuito impreso este debe cumplir unas tolerancias mnimas de interferencia elctrica; por ltimo, los ciclos de memoria tambin deben cumplir unas especificaciones muy exigentes. De cara a evitar posibles confusiones, los mdulos compatibles con este estndar deben estar identificados as: PC 100?-abc-def. BEDO (burst Extended Data Output): Fue diseada originalmente parasoportar mayores velocidades de BUS. Al igual que la memoria SDRAM, esta memoria
Pgina 60

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

es capaz de transferir datos al procesador en cada ciclo de reloj, pero no de forma continuada, como la anterior, sino a rfagas (bursts), reduciendo, aunque no suprimiendo totalmente, los tiempos de espera del procesador para escribir o leer datos de memoria. RDRAM (Direct Rambus DRAM): Es un tipo de memoria de 64 bits que puede producir rfagas de 2ns y puede alcanzar tasas de transferencia de 533MHz, con picos de 1,6 GB/s. Pronto podr verse en el mercado y es posible que tu prximo equipo tenga instalado este tipo de memoria. Es el componente ideal para las tarjetas grficas AGP, evitando los cuellos de botella en la transferencia entre la tarjeta grfica y la memoria de sistema durante el acceso directo a memoria (DIME) para el almacenamiento de texturas grficas. Hoy en da la podemos encontrar en las consolas NINTENDO 64. DDR SDRAM (Double Data Rate SDRAM o SDRAM-II): Funciona a velocidades de 83, 100 y 125MHz, pudiendo doblar estas velocidades en la transferencia de datos a memoria. En un futuro, esta velocidad puede incluso llegar a triplicarse o cuadriplicarse, con lo que se adaptara a los nuevos procesadores. Este tipo de memoria tiene la ventaja de ser una extensin de la memoria SDRAM, con lo que facilita su implementacin por la mayora de los fabricantes. SLDRAM: Funcionar a velocidades de 400MHz, alcanzando en modo doble 800MHz, con transferencias de 800MB/s, llegando a alcanzar 1,6GHz, 3,2GHz en modo doble, y hasta 4GB/s de transferencia. Se cree que puede ser la memoria a utilizar en los grandes servidores por la alta transferencia de datos. ESDRAM: Este tipo de memoria funciona a 133MHz y alcanza transferencias de hasta 1,6 GB/s, pudiendo llegar a alcanzar en modo doble, con una velocidad de 150MHz hasta 3,2 GB/s.
Pgina 61

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La memoria FPM (Fast Page Mode) y la memoria EDO tambin se utilizan en tarjetas grficas, pero existen adems otros tipos de memoria DRAM, pero que SLO de utilizan en TARJETAS GRFICAS, y son los siguientes: - MDRAM (Multibank DRAM) Es increblemente rpida, con transferencias de hasta 1 GIGA/s, pero su coste tambin es muy elevado. - SGRAM (Synchronous Graphic RAM) Ofrece las sorprendentes capacidades de la memoria SDRAM para las tarjetas grficas. Es el tipo de memoria ms popular en las nuevas tarjetas grficas aceleradoras 3D. - VRAM Es como la memoria RAM normal, pero puede ser accedida al mismo tiempo por el monitor y por el procesador de la tarjeta grfica, para suavizar la presentacin grfica en pantalla, es decir, se puede leer y escribir en ella al mismo tiempo. - WRAM (Window RAM) Permite leer y escribir informacin de la memoria al mismo tiempo, como en la VRAM, pero est optimizada para la presentacin de un gran nmero de colores y para altas resoluciones de pantalla. Es un poco ms econmica que la anterior. La arquitectura PC establece que los datos que constituyen una imagen a mostrar en el monitor no se mapeen en la RAM que podamos tener en la placa madre, sino en la memoria RAM que se encuentra en la propia tarjeta de vdeo. Por tanto, para concluir contar que con la introduccin de procesadores ms rpidos, las tecnologas FPM y EDO empezaron a ser un cuello de botella. La memoria ms eficiente es la que trabaja a la misma velocidad que el procesador. Las velocidades de la DRAM FPM y EDO eran de 80, 70 y 60 ns, lo cual era suficientemente rpido para velocidades inferiores a 66MHz. Para procesadores lentos, por ejemplo el 486, la memoria FPM era suficiente. Con procesadores ms rpidos, como los Pentium de primera generacin, se utilizaban memorias EDO. Con los ltimos procesadores Pentium de segunda y tercera generacin, la memoria SDRAM es la mejor solucin.

Pgina 62

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La memoria ms exigente es la PC 100 (SDRAM a 100 MHz), necesaria para montar un AMD K62 o un Pentium a 350 MHz o ms. Va a 100 MHz en vez de los 66 MHZ usuales. Tecnologas de memorias RAM: SIMMs y DIMMs: Se trata de la forma en que se organizan los chips de memoria, del tipo que sean, para que sean conectados a la placa base del ordenador. Son unas placas alargadas con conectores en un extremo; al conjunto se le llama mdulo. El nmero de conectores depende del bus de datos del microprocesador. 1. SIMM de 72 contactos, los ms usados en la actualidad. Se fabrican mdulos de 4, 8, 16,32 y 64 Mb. 2. SIMM EDO de 72 contactos, muy usados en la actualidad. Existen mdulos de 4, 8, 16,32 y 64 Mb. 3. SIMM de 30 contactos, tecnologa en desuso, existen adaptadores para aprovecharlas y usar 4 de estos mdulos como uno de 72 contactos. Existen de 256 Kb, 512 Kb (raros), 1, 2 (raros), 4, 8 y 16 Mb. 4. SIPP, totalmente obsoletos desde los 386 (estos ya usaban SIMM mayoritariamente). SIMMs: Single In-line Memory Module, con 30 72 contactos. Los de 30 contactos pueden manejar 8 bits cada vez, por lo que en un 386 486, que tiene un bus de datos de 32 bits, necesitamos usarlos de 4 en 4 mdulos iguales. Su capacidad es de 256 Kb, 1 Mb 4 Mb. Miden unos 8,5 cm (30 c.) 10,5 cm (72 c.) y sus zcalos suelen ser de color blanco. Los SIMMs de 72 contactos, manejan 32 bits, por lo que se usan de 1 en 1 en los 486; en los Pentium se hara de 2 en 2 mdulos (iguales), porque el bus de datos de los Pentium es el doble degrande (64 bits). La capacidad habitual es de 1 Mb, 4 Mb, 8 Mb, 16, 32 Mb.
Pgina 63

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

5. DIMMs, ms alargados (unos 13 cm), con 168 contactos y en zcalos generalmente negros. Pueden manejar 64 bits de una vez, por lo que pueden usarse de 1 en 1 en los Pentium, Pentium II y Pentium III. Existen para voltaje estndar (5 voltios) o reducido (3.3 V). Y podramos aadir los mdulos SIP, que eran parecidos a los SIMM pero con frgiles patitas soldadas y que no se usan desde hace bastantes aos, o cuando toda o parte de la memoria viene soldada en la placa (caso de algunos ordenadores de marca). Funcionamiento de la Memoria Flash, como tipo de EEPROM. Contiene un arreglo de celdas con un transistor evolucionado con dos puertas en cada interseccin. Tradicionalmente slo almacenan un bit de informacin. Las nuevas memorias flash, llamadas tambin dispositivos de celdas multinivel, pueden almacenar ms de un bit por celda variando el nmero de electrones que almacenan. Estas memorias estn basadas en el transistor FAMOS (Floating Gate Avalanche-Injection Metal Oxide Semiconductor) que es, esencialmente, un transistor NMOS con un conductor (basado en un xido metlico) adicional entre la puerta de control (CG Control Gate) y los terminales fuente/drenador contenidos en otra puerta (FG Floating Gate) o bien que rodea a FG y es quien contiene los electrones que almacenan la informacin. Memoria flash de tipo NOR En las memorias flash de tipo NOR, cuando los electrones se encuentran en FG, modifican (prcticamente anulan) el campo elctrico que generara CG en caso de estar activo. De esta forma, dependiendo de si la celda est a 1 a 0, el campo elctrico de la celda existe o no. Entonces, cuando se lee la celda poniendo un determinado voltaje en CG, la corriente elctrica fluye o no en funcin del voltaje almacenado en la celda. La presencia/ausencia de corriente

Pgina 64

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

se detecta e interpreta como un 1 un 0, reproduciendo as el dato almacenado. En los dispositivos de celda multi-nivel, se detecta la intensidad de la corriente para controlar el nmero de electrones almacenados en FG e interpretarlos adecuadamente. Para programar una celda de tipo NOR (asignar un valor determinado) se permite el paso de la corriente desde el terminal fuente al terminal sumidero, entonces se coloca en CG un voltaje alto para absorber los electrones y retenerlos en el campo elctrico que genera. Este proceso se llama hotelectron injection. Para borrar (poner a 1, el estado natural del transistor) el contenido de una celda, expulsar estos electrones, se emplea la tcnica de Fowler-Nordheim tunnelling, un proceso de tunelado mecnico cuntico. Esto es, aplicar un voltaje inverso bastante alto al empleado para atraer a los electrones, convirtiendo al transistor en una pistola de electrones que permite, abriendo el terminal sumidero, que los electrones abandonen el mismo. Este proceso es el que provoca el deterioro de las celdas, al aplicar sobre un conductor tan delgado un voltaje tan alto. Es necesario destacar que las memorias flash estn subdividas en bloques (en ocasiones llamados sectores) y por lo tanto, para el borrado, se limpian bloques enteros para agilizar el proceso, ya que es la parte ms lenta del proceso. Por esta razn, las memorias flash son mucho ms rpidas que las EEPROM convencionales, ya que borran byte a byte. No obstante, para reescribir un dato es necesario limpiar el bloque primero para despus reescribir su contenido. Memorias flash de tipo NAND Las memorias flash basadas en puertas lgicas NAND funcionan de forma ligeramente diferente: usan un tnel de inyeccin para la escritura y para el borrado un tnel de soltado. Las memorias basadas en NAND tienen, adems de la evidente base en otro tipo de puertas, un coste bastante inferior, unas diez veces de ms resistencia a las operaciones pero slo permiten acceso

Pgina 65

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

secuencial (ms orientado a dispositivos de almacenamiento masivo), frente a las memorias flash basadas en NOR que permiten lectura de acceso aleatorio. Sin embargo, han sido las NAND las que han permitido la expansin de este tipo de memoria, ya que el mecanismo de borrado es ms sencillo (aunque tambin se borre por bloques) lo que ha proporcionado una base ms rentable para la creacin de dispositivos de tipo tarjeta de memoria. Las populares memorias USB o tambin llamadas Pendrives, utilizan memorias flash de tipo NAND.

Funcionamiento de la Memoria Cache Unas 5 o 6 veces ms que la RAM. Esto la encarece bastante, y se es uno de los motivos por los cuales su capacidad es mucho menor que el de la RAM: un mximo cercano a 512 kilobytes (512 Kb), es decir, medio mega, frente a 16 32 megas de RAM. Adems, este precio elevado la hace candidata a falsificaciones y engaos. Pero la cach no slo es rpida; adems, se usa con una finalidad especfica. Cuando una computadora trabaja, el microprocesador opera en ocasiones con un nmero reducido de datos, pero que tiene que traer y llevar a la memoria en cada operacin. Si situamos en medio del camino de los datos una memoria intermedia que almacene los datos ms usados, los que casi seguro necesitar el microprocesador en la prxima operacin que realice, por lo tanto ahorrar mucho tiempo del trnsito y acceso a la lenta memoria RAM; esta es la segunda utilidad de la cach.

1.2.3 Dispositivos De I/O

A lo largo de la historia de las computadoras se han desarrollado muchos tipos de dispositivos que podemos reunir en tres grandes grupos:

Pgina 66

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Dispositivos de almacenamiento. Terminales. Comunicaciones. A su vez los dispositivos se pueden clasificar, atendiendo al tipo de informacin que manejan y como lo hacen, los siguientes grupos: Dirigidos a bloques. -Tratan la informacin en bloques de tamao fijo. Su caracterstica principal es que se puede leer cada bloque como una unidad independiente de las dems (por ejemplo los discos). Dirigidos al carcter. - Entregan o aceptan cadenas de caracteres sin tener en cuenta ninguna estructura prefijada. No son direccionables ni pueden realizar operaciones de bsqueda (por ejemplo un terminal). Dispositivos de almacenamiento. Los dispositivos de almacenamiento son todos aquellos elementos informticos que se utilizan para almcenar datos del ordenador de una manera temporal o permanente. Estos dispositivos graban la informacin en cantidades fijas y con cierto formato conocido como: bloques de control, los cuales tienen una direccin nica que identifica a cada bloque, razn por la cual son tambin llamados como dispositivos de bloque base Discos. Son los dispositivos para almacenamiento secundario ms comunes aceptan y recuperan datos a alta velocidad. Los datos son transferidos entre el disco y la memoria en bloques. Los discos pueden ser fijos o removibles. Los primeros no se pueden cambiar, mientras que los segundos pueden ser intercambiados, con los que se consigue un mayor volumen de almacenamiento. Pueden

Pgina 67

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

reunirse varios discos en un paquete para conseguir con ello un mayor almacenamiento en un reducido espacio. Todos los discos de un disk pack giran a la misma velocidad. Cada disco se divide en pistas concntricas de tal forma que todas las homologas de los distintos discos forman lo que se denomina cilindro. Cada pista a su vez se divide en sectores y cada sector contiene un bloque de informacin. Se destinan principalmente al almacenamiento de grandes archivos de de datos y copias de seguridad periodicas. Al igual que los discos, se trata de un medio magntico de almacenamiento consistente en una cinta plstica recubierta por cara de una fina capa de oxido magnetizable. Generalmente, se denomina trama a un conjunto de nueva bits de los cuales ocho se destinan para byte de datos y el novedoso se conoce como bit de paridad para el control de errores. Tambores magnticos. Los tambores se suelen emplear para el intercambio o swapping. Tienen forma cilndrica y est dividida en pistas circulares cada una de las cuales tienen su propia cabeza de lectura/escritura. El tambor esta constantemente girando a una velocidad aproximada de 3 000 revoluciones/minuto. Actualmente y debido a su tamao y precio han cado en desuso, siendo su principal sustituto el disco magntico. TERMINALES.

Pgina 68

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

En general se denomina terminal al conjunto formado por un teclado y una pantalla conectados a la computadora para producir datos a travs del primero y recibirlos a travs de la segunda. Las terminales pueden dividirse en dos categoras las que de conectan a travs del estndar RS-232, y los mapeados en memoria. Terminales RS-232. Constan de teclado y pantalla que transmiten bit a bit en serie. La velocidad de transmisin de estos bits viene dada en baudios, siendo valores utilizados: 300, 1, 200, 2,400, 4,800, 9,600. Estas terminales se conectan a la computadora a travs de un cable fsico, este cable en su entrada a la computadora termina en una tarjeta hardware o interfaz que a su vez se conecta a un bus de dicha computadora. Se conocen, generalmente, con el nombre genrico TTY. Terminales mapeados en memoria. No necesitan lnea de conexin a la computadora ya que estn directamente conectados al bus del mismo. -En estos terminales el teclado se conecta directamente al bus y es independiente de la pantalla. COMUNICACIONES LINEA DE COMUNICACIONES. Son dispositivos cuya misin es la de conectar entre computadoras estas sus terminales cuando la distancia es grande. Suelen llevar consigo elementos fsicos como pueden ser la propia lnea y los adaptadores a la lnea denominados modems, y lgicos, como pueden ser el protocolo de comunicacin y el mtodo de control y deteccin de errores que s e utiliza.
Pgina 69

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Las lneas de comunicaciones pueden ser de varios tipos: Sincrona o asncrona. Segn se transmita la informacin entre los dispositivos de forma sincronizada (reloj) o no. Segn el sentido de transmisin. Simplex: cuando los datos se transmiten en una sola direccin. Half-duplex: si los datos pueden transmitirse en ambas direcciones pero no simultneamente. Full-duplex: cuando los datos pueden transmitirse en ambas direcciones simultneamente. INTERFAZ PROCESADOR-PERIFERICO. La velocidad y la complejidad de los perifricos determinan como deben ser conectados al procesador. REGISTROS. Los dispositivos que pueden ser accedidos directamente en una zona determinada de la memoria o indirectamente por medio de instrucciones hardware que devuelven el estado del mismo. Estos registros tienen cuatro misiones: Transferir el estado del dispositivo. Transferir instrucciones al dispositivo. Transferir datos desde el dispositivo.

Pgina 70

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Transferir datos al dispositivo. CONTROLADORES. Los dispositivos complejos no se conectan directamente al procesador si no que lo hacen a travs de un controlador que contiene el estado del dispositivo controla el mismo y chequea los datos transferidos. El controlador es el que acepta las ordenes del procesador y se comunica a travs de los registros como si se tratara de un dispositivo. El controlador tambin llamado unidad de control, puede manejar varios dispositivos del mismo tipo. CANALES. Normalmente los controladores se conectan al procesador a travs de una canal o procesador de entrada/salida. El propsito de un canal es conseguir que los dispositivos sean tratados como virtuales abstractos o transparentes. Los canales son manejados por comandos y cuando terminan la operacin devuelven el estatus correspondiente e interrumpen el procesador. Los canales pueden ser de varios tipos: Selectores. Pueden manejar varios dispositivos, pero slo pueden transferir datos de uno en uno. Multiplexores. Manejan varios dispositivos y pueden transferir datos

simultneamente. ENTRADA/SALIDA (I/O)

Pgina 71

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El sistema de E/S proporciona una abstraccin en la que los dispositivos de E/S y los archivos, son tratados de manera uniforme y son manipulados por un conjunto de rdenes de alto nivel como leer - cadena. Si los dispositivos de E/S funcionan un modo ocurrente se pueden tener beneficios de rendimientos. La operacin concurrente de E/S se consigue iniciando una serie de E/S independientes antes de que se completen otras en progreso. Esta operacin requiera la planificacin cuidadosa de muchas secuencias de cdigos diferentes y de sucesos crticos en el tiempo detectado por los dispositivos de E/S. Los dispositivos de E/S que los conectan con el sistema informtica, no suelen presentar relacin con el reloj del procesador, la llegada de datos y los tiempos de transferencia de E/S son impredecibles. El problema de la entrada. En la mayora de los dispositivos de E/S compartes dos caractersticas que en gran medida definen el problema de la E/S y son:. Operacin asncrona. Diferencia de velocidad.

1.2.3.1Arquitectura del sistema de I/O (E/S)


En computacin, entrada/salida, tambin abreviado E/S o I/O (del original en ingls input/output), es la coleccin de interfaces que usan las distintas unidades funcionales (subsistemas) de un sistema de procesamiento de informacin para comunicarse unas con otras, o las seales (informacin) enviadas a travs de esas interfaces. Las entradas son las seales recibidas por la unidad, mientras que las salidas son las seales enviadas por sta. El trmino puede ser usado para describir una accin; "realizar una entrada/salida" se refiere a ejecutar una operacin de entrada o de salida. Los dispositivos de E/S los usa una persona u otro sistema para comunicarse con
Pgina 72

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

una computadora. De hecho, a los teclados y ratones se los considera dispositivos de entrada de una computadora, mientras que los monitores e impresoras son vistos como dispositivos de salida de una computadora. Los dispositivos tpicos para la comunicacin entre computadoras realizan las dos operaciones, tanto entrada como salida, y entre otros se encuentran los mdems y tarjetas de red.

El sistema de entrada/salida est construido como un conjunto de manejadores apilados, cada uno de los cuales est asociado a un dispositivo de entrada/salida (archivos, red, etc.). Ofrece a las aplicaciones y entornos de ejecucin servicios genricos que permiten manejar los objetos de I/O del sistema. A travs de ellos se puede acceder a todos los manejadores de archivos y de dispositivos tales como: discos, redes, consola, tarjetas de sonido, etc. La arquitectura de E/S, es compleja y est estructurada en capas, cada una de las cuales tiene una funcionalidad bien definida.

Pgina 73

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Esquema de entrada/salida.

Interfaz del sistema operativo para E/S. Sistema de archivos. Gestor de redes. Gestor de bloques. Gestor de cach. Manejadores de dispositivo.

Interfaz del sistema operativo para E/S Proporciona servicios de E/S sncrona y asncrona a las aplicaciones y una interfaz homognea para poderse comunicar con los manejadores de dispositivo ocultando los detalles de bajo nivel. Sistema de Archivos

Pgina 74

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Proporcionan una interfaz homognea, a travs del sistema de archivos virtuales, para acceder a todos los sistemas de archivos que proporciona el sistema operativo (FFS, SV, NTFS, FAT, etc). Gestor de redes Proporciona una interfaz homognea para acceder a todos los sistemas de red que proporciona el sistema operativo (TCP/IP, Novell, etc.). Adems permite acceder a los manejadores de cada tipo de red particular de forma transparente. Gestor de bloques Los sistemas de archivos y otros dispositivos lgicos con acceso a nivel de bloques se suelen se suelen limitar a traducir las operaciones del formato del usuario de bloques que entiende el dispositivo y se las pasan a este gestor de bloques. Gestor de cach Optimiza la E/S mediante la gestin de almacenamiento intermedio en memoria para dispositivos de E/S de tipo bloque. Manejadores de dispositivo Proporcionan operaciones de alto nivel sobre los dispositivos y las traducen en su mbito interno a operaciones de control de cada dispositivo particular. Cada uno de estos componentes se considera un objeto del sistema, por lo que habitualmente todos los sistemas operativos permiten modificar el sistema operativo de forma esttica o dinmica para reemplazar, aadir o quitar manejadores de dispositivos. Sin embargo, por razones de seguridad no se permite a las aplicaciones de usuario acceder directamente a los dispositivos, sino a travs de la interfaz de llamadas al sistema.

1.2.3.2 TIPOS DE I/O

Pgina 75

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Dispositivos de entrada y salida (Fig.1.2)

Fig.1.2

Dispositivos de entrada de un ordenador.

Entrada:

Teclado Ratn Joystick Lpiz ptico Micrfono Webcam Escner Escner de cdigo de barras

Salida:

Pgina 76

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Monitor Altavoz Auriculares Impresora Plotter Proyector

Entrada/salida:

Unidades de almacenamiento CD DVD Mdem Fax Memory cards USB Router Pantalla tctil

1.2.3.3 Caractersticas de los dispositivos de Entrada y Salida

Una de las funciones bsicas de la

computadora es comunicarse con los

dispositivos exteriores, es decir, la computadora debe ser capaz de enviar y recibir datos desde estos dispositivos. Sin esta funcin, la computadora no sera operativa porque sus clculos no seran visibles desde el exterior.

Pgina 77

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Existe una gran variedad de dispositivos que pueden comunicarse con una computadora, desde los dispositivos clsicos (terminales, impresoras, discos, cintas, etc.) hasta convertidores A/D y D/A para aplicaciones de medida y control de procesos. De todos los posibles perifricos, algunos son de lectura, otros de escritura y otros de lectura y escritura (es importante resaltar que este hecho siempre se mira desde el punto de vista del proceso). Por otra parte, existen perifricos de almacenamiento tambin llamados memorias auxiliares o masivas. La mayora de los perifricos estn compuestos por una parte mecnica y otra parte electrnica. Estas partes suelen separarse claramente para dar una mayor modularidad. A la componente electrnica del perifrico se le suele denominar controlador del dispositivo o, tambin, adaptador del dispositivo. Si el dispositivo no tiene parte mecnica (como, por ejemplo, la pantalla de un terminal), el controlador estar formado por la parte digital del circuito. Frecuentemente los controladores de los dispositivos estn alojados en una placa de circuito impreso diferenciada del resto del perifrico. En este caso es bastante habitual que un mismo controlador pueda dar servicio a dispositivos de caractersticas similares.

El principal problema planteado por los perifricos es su gran variedad que tambin afecta a las velocidades de transmisin. Por tanto, el mayor inconveniente que encontramos en los perifricos es la diferencia entre sus velocidades de transmisin y la diferencia entre stas y la velocidad de operacin de la computadora.

1.2.3.4

Funcionamiento de los dispositivos de I/O

El funcionamiento de estos dispositivos depende de su propsito, pero tambin puede variar y ser, alternativamente, de entrada, o bien, de salida. Por ejemplo,
Pgina 78

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

para un teclado el movimiento de la mano del usuario es una entrada de datos, mientras que la seal elctrica que envan al ordenador es una salida. Lo mismo ocurre con casi cualquiera de estos aparatos. Hoy en da es prcticamente imposible el uso de un ordenador sin el empleo de uno o ms dispositivos de esta ndole. Muchos de ellos permiten no slo convertir informacin y agilizar el uso de las funcionalidades de una computadora, sino tambin conectarla con otros ordenadores, brindarle acceso a Internet, operar con dispositivos analgicos y hasta combinar sus funciones entre s. La planificacin de E/S o de entrada y salida hace referencia a la organizacin que realiza un sistema operativo respecto del orden en que las diversas peticiones de lectura y escritura sern ejecutadas. Es decir, la prioridad que otorgar a las distintas unidades de input y output.

Unidad 2. Comunicacin interna en la computadora.


Introduccin En esta unidad se le presentar al alumno la forma de comunicacin de las partes del hardware interno de un computador, las cuales son descritas acontinuacin. Internamente un computador estar formado por los siguientes componentes. 1. Microprocesador. Es un circuito electrnico que acta como Unidad Central de Proceso de un ordenador, proporcionando el control de las operaciones de clculo. Se
Pgina 79

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

identifica rpido en una tarjeta madre porque esta acoplado a la misma en un socket, tiene forma cuadrada con un pequeo ventilador arriba y generan mucho calor. PARTES INTERNAS DEL MICROPROCESADOR Unidad Aritmtico-Lgica (ALU): Es donde se efectan las operaciones aritmticas (suma, resta, y a veces producto y divisin) y lgicas (and, or, not, etc.). Decodificador de instrucciones: All se interpretan las instrucciones que van llegando y que componen el programa. Aqu entra en juego los compiladores e interpretes. Bloque de registros: Los registros son celdas de memoria en donde queda almacenado un dato temporalmente. Existe un registro especial llamado de indicadores, estado o flags, que refleja el estado operativo del Microprocesador. Bus de datos: Aquel por donde la CPU recibe datos del exterior o por donde la CPU manda datos al exterior. Bus de direcciones: Aquel, que es el utilizado por la CPU para mandar el valor de la direccin de memoria o de un perifrico externo al que la CPU quiere acceder. Bus de control: Aquel que usa una serie de lneas por las que salen o entran diversas seales de control utilizadas para mandar acciones a otras partes del ordenador. Terminales de alimentacin, por donde se recibe los voltajes desde la fuente de alimentacin del ordenador. Reloj del sistema, es un circuito oscilador o cristal de cuarzo, que oscila varios millones de veces por segundo. Es el que le marca el comps, el que le dicta a qu velocidad va a ejecutarse cualquier operacin. Uno de los factores a tener en cuenta al comprar un ordenador es su velocidad, que se mide en MHz. De hecho, esa velocidad es la del reloj del sistema, el "corazn". Partes externas del microprocesador. Disipador de Calor: Es una estructura metlica (por lo general de aluminio) que va montado encima del Microprocesador para ayudarlo a liberar el calor. FanCooler: Tambin conocidos como Electroventiladores y estos son unos pequeos ventiladores de color negro que van montados en el disipador de calor y a su vez en el Microprocesador, y que permite enfriar el disipador de calor del Microprocesador y a este ultimo tambin. Por lo general giran entre 3500 y 4500 r.p.m. y trabajan a 12 Volts. Tipos de microprocesadores. Segn la posicin para instalarlo:
Pgina 80

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Horizontales: Tienen forma cuadrada con una ligera muesca en una de sus esquinas que indica el primer Pin. Por lo general van acompaados de un disipador de calor y un fancooler y se instalan de forma horizontal, de all su nombre. Estn presentes en equipos de la familia X86 que no vallan montados en el Slot1, sino directamente en el Socket de la tarjeta madre. Socket 3-5 para equipos 80-486,586,686, AMD y Cyrix; Socket 7 para equipos Pentium I, algunos AMD y Cyrix ; Socket 370 [2] FTPGA o PPGA para equipos Pentium III Intel Coopermine o algunos Celeron. Las velocidades varan desde 33 Mhz para 80-286, 200 Mhz para Pentium I, 1.1 Ghz para Celeron y Pentium III y 1.2 a 2 Ghz para algunos Pentium IV. La caracterstica de Velocidad, Memoria Cach y Voltaje del Microprocesador casi siempre son indicadas por el fabricante en la parte frontal del Microprocesador. Verticales: Se caracterizan porque estn montados en una tarjeta electrnica con disipador de calor y fanCooler incorporado y se instalan verticalmente en un Slot parecido a una ranura de expansin. Las velocidades varan desde 233 Mhz para algunos Pentium II hasta 800 Mhz para Pentium III. La caracterstica de Velocidad, Memoria Cach y Voltaje del Microprocesador casi siempre son indicadas por el fabricante en una de las partes laterales del Disipador de calor del Microprocesador. 2. Placa base o tarjeta madre. Una tarjeta madre est formada por una serie de circuitos que cumplen una serie de funciones determinadas para el funcionamiento del CPU. Los principales componentes de la placa base son: El Socket del CPU. El controlador del teclado. El controlador de DMAs e IRQs. Los buses de expansin. La memoria ROM BIOS. El controlador de la cach. (Hardware) (Firmware). (Firmware) (Hardware) (Firmware) (Firmware)

Pgina 81

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

II. COMUNICACIN INTERNA EN LA COMPUTADORA. 2.1 Buses La familia de ordenadores PC interconexiona toda la circuiteria de control interna mediante un diseo de circuito, conocido con el nombre de bus. Es el conjunto de lneas (cables) de hardwares utilizados para la transmisin de datos entre los componentes de un sistema informtico. Un bus es en esencia una ruta compartida que conecta diferentes partes del sistema como el procesador, la controladora de unidad de disco, la memoria y los puertos de entrada, salida, permitindoles transmitir informacin. El bus, por lo general supervisado por el microprocesador, se especializa en el transporte de diferentes tipos de informacin. Por ejemplo, un grupo de cables (en realidad trazos sobre una placa de circuito impreso) transporta los datos, otro las direcciones (ubicaciones) en las que puede encontrarse informacin especfica, y otro las seales de control para asegurar que las diferentes partes del sistema utilizan su ruta compartida sin conflictos. Los buses se caracterizan por el nmero de bits que pueden transmitir en un determinado momento. Un equipo con un bus de 8 bits de datos, por ejemplo, transmite 8 bits de datos cada vez, mientras que uno con un bus de 16 bits de datos transmite 16 bits de datos simultneamente. Como el bus es parte integral de la transmisin interna de datos y como los usuarios suelen tener que aadir componentes adicionales al sistema, la mayora de los buses de los equipos informticos pueden ampliarse mediante uno o ms zcalos de expansin (conectores para placas de circuito aadidas). Al agregarse estas placas permiten la conexin elctrica con el bus y se convierten en parte efectiva del sistema. El Bus se refiere al camino que recorren los datos desde una o varias fuentes hacia uno o varios destinos y es una serie de hilos contiguos. En el sentido estricto de la palabra, esta definicin slo se aplica a la interconexin entre el procesador y los perifricos. Un bus es simplemente un conjunto compartido de pistas trazadas en la placa de circuito principal, al que se conectan todas las partes que controlan y forman el ordenador. Cuando un dato pasa de un componente a otro, viaja a lo largo de este camino comn para alcanzar su destino. Cada chip de control y cada
Pgina 82

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

byte de memoria del PC estn conectados directa o indirectamente al bus. Cuando un nuevo componente se inserta en uno de losconectores de expansin, queda unido directamente al bus, convirtindose en un objeto ms de la unidad completa. Cualquier informacin que entra o sale de un sistema ordenador se almacena temporalmente en al menos una de las distintas localizaciones que existen a lo largo del bus. La mayor parte de las veces el dato se sita en la memoria principal, que en la familia PC est formada por miles de posiciones de memoria de 8 bits. Pero algn dato puede acabar en un puerto, o registro, durante unos instantes, mientras espera que la CPU lo enve a una posicin adecuada. Generalmente los puertos y registros almacenan slo uno o dos bytes de informacin a la vez, y se utiliza normalmente como lugares de parada intermedia para los datos, que se estn enviando de un lugar a otro. Siempre que se utiliza una posicin de memoria, o un puerto, como lugar de almacenamiento, su localizacin est marcada por una direccin que la identifica individualmente. Cuando el dato est listo para ser transferido, se transmite primero su direccin de destino por el bus de direcciones; el dato sigue a la zaga por el bus de datos. Por tanto, el bus transporta algo ms que datos. Lleva informacin de control, tales como las seales de temporizacin (del sistema reloj), las seales de interrupcin, as como las direcciones de las miles de posiciones que forman tanto la memoria como los dispositivos que estn conectados al bus. Para diferenciar estas cuatro funciones diferentes, el bus est dividido en cuatro partes: lneas de potencia, bus de control, bus de direcciones y bus de datos.

Pgina 83

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.2.1. La informacin codificada viaja a travs de la computadora por un bus.

Fig. 2.2 Transferencia de informacin de los dispositivos de entrada al bus de datos y del bus de datos a los dispositivos de salida.

El bus soporta tres tipos principales de informacin: un grupo de cables transporta datos, tales como la letra A codificada; otro grupo lleva la direccin del componente al que van dirigidos los datos. Cada componente acepta slo la informacin que va dirigida a l; por ejemplo, la informacin enviada a la impresora no ser aceptada de forma inadvertida por la unidad de disco.
Pgina 84

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La tercera clase de informacin son seales de tiempo, que sincronizan todo lo que hay conectado al bus para enviar y recibir mensajes en el instante correcto. Una PC tiene muchos tipos de buses incluyendo los siguientes:

Processor Bus: Es la va de comunicacin entre el CPU y los chips inmediatos a el, comnmente llamado chipset en los sistemas modernos. Este bus es usado para transferir datos entre el CPU y bus del sistema principal, por ejemplo, o entre el cpu y la memoria cach externa. El propsito de processor bus es conseguir mayor velocidad en la entrega de la informacin para y del CPU, este bus opera a una mayor rapidez que cualquier otro bus en la PC.

En este bus no existen los cuellos de botellas, el bus consiste de circuitos elctricos para datos, direccin y control. Este bus opera con la misma velocidad del reloj a como lo hace el CPU externamente, ya que internamente el CPU puede trabajar a mayores velocidades.

Memory Bus: Es usado para transferir informacin entre la memoria principal y el CPU. Este bus es implementado en un chip dedicado, el cual es responsable de la comunicacin. La informacin que viaja sobre el memory bus se hace a una velocidad ms baja que en el processor bus.

Este bus tiene el mismo ancho que el procesor bus, esto significa que en un sistema con CPU de 32 bits el memory bus es de 32 bits, esto definir el tamao de lo que se conoce como banco de memoria. Los slots para la memoria son conectados en el memory bus de la misma forma que son conectados los slots de E/S Bus.

Address Bus: En los sistemas actuales, este bus es considerado como parte de los buses del procesador y de la memoria. Este bus es usado para indicar exactamente que direccin en memoria o que direccin sobre el bus de sistema ser usada en la operacin de transferir un dato. El tamao del bus de memoria controla la cantidad de memoria que el CPU puede direccional directamente. I/O Bus: Son los buses que se encargan de la entrada y salida de los datos en todo el sistema. Las diferencias entre los tipos de buses que pertenecen a esta categora consiste en la cantidad de datos que pueden transferir a la vez y la velocidad a la que pueden hacerlo.

Hay tres clases de buses: Bus de Datos, Bus de Direcciones y Bus de Control. El primero mueve los datos entre los dispositivos del hardware: de Entrada como el Teclado, el Escner, el Ratn, etc.; de salida como la Impresora, el Monitor o la tarjeta de Sonido; y de Almacenamiento como el Disco Duro, el Diskette o la Memoria-Flash. Estas transferencias que se dan a travs del Bus de Datos son gobernadas por varios dispositivos y mtodos, de los cuales el Controlador PCI, "Peripheral Component Interconnect", Interconexin de componentes Perifricos, es uno
Pgina 85

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de los principales. Su trabajo equivale, simplificando mucho el asunto, a una central de semforos para el trfico en las calles de una ciudad. El Bus de Direcciones, por otra parte, est vinculado al bloque de Control de la CPU para tomar y colocar datos en el Sub-sistema de Memoria durante la ejecucin de los procesos de cmputo, El Bus de Control transporta seales de estado de las operaciones efectuadas por el CPU con las dems unidades. Una tarjeta-madre tipo ATX tiene tantas pistas elctricas destinadas a buses, como anchos sean los Canales de Buses del Microprocesador de la CPU: 64 para el Bus de datos y 32 para el Bus de Direcciones. El "ancho de canal" explica la cantidad de bits que pueden ser transferidos simultneamente. As, el Bus de datos transfiere 8 bytes a la vez. Para el Bus de Direcciones, el "ancho de canal" explica as mismo la cantidad de ubicaciones o Direcciones diferentes que el microprocesador puede alcanzar. Esa cantidad de ubicaciones resulta de elevar el 2 a la 32 potencia. "2" porque son dos las seales binarias, los bits 1 y 0; y "32 potencia" porque las 32 pistas del Bus de Direcciones son, en un instante dado, un conjunto de 32 bits. As, el Canal de Direcciones del Microprocesador para una PC-ATX puede "direccionar" ms de 4 mil millones de combinaciones diferentes para el conjunto de 32 bits de su Bus. Conexiones del hardware. Para funcionar, el hardware necesita unas conexiones materiales que permitan a los componentes comunicarse entre s e interaccionar. Un bus constituye un sistema comn interconectado, compuesto por un grupo de cables o circuitos que coordina y transporta informacin entre las partes internas de la computadora. El bus de una computadora consta de dos canales: uno que la CPU emplea para localizar datos, llamado bus de direcciones, y otro que se utiliza para enviar datos a una direccin determinada, llamado bus de datos. Un bus se caracteriza por dos propiedades: la cantidad de informacin que puede manipular simultneamente (la llamada 'anchura de bus') y la rapidez con que puede transferir dichos datos. Una conexin en serie es un cable o grupo de cables utilizado para transferir informacin entre la CPU y un dispositivo externo como un mouse, un teclado, un mdem, un digitalizador y algunos tipos de impresora. Este tipo de conexin slo transfiere un dato de cada vez, por lo que resulta lento. La ventaja de una conexin en serie es que resulta eficaz a distancias largas.

Pgina 86

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Una conexin en paralelo utiliza varios grupos de cables para transferir simultneamente ms de un bloque de informacin. La mayora de los digitalizadores e impresoras emplean este tipo de conexin. Las conexiones en paralelo son mucho ms rpidas que las conexiones en serie, pero estn limitadas a distancias menores de 3 m entre la CPU y el dispositivo externo. Funcionamiento. En el bus se encuentran dos pistas separadas, el bus de datos y el bus de direcciones. La CPU escribe la direccin de la posicin deseada de la memoria en el bus de direcciones accediendo a la memoria, teniendo cada una de las lneas carcter binario. Es decir solo pueden representar 0 o 1 y de esta manera forman conjuntamente el nmero de la posicin dentro de la memoria (es decir: la direccin). Cuanto ms lneas haya disponibles, mayor es la direccin mxima y mayor es la memoria a la cual puede dirigirse de esta forma. En el bus de direcciones original haba ya 20 direcciones, ya que con 20 bits se puede dirigir a una memoria de 1 MB y esto era exactamente lo que corresponda a la CPU. Esto que en le teora parece tan fcil es bastante ms complicado en la prctica, ya que aparte de los bus de datos y de direcciones existen tambin casi dos docenas ms de lneas de seal en la comunicacin entre la CPU y la memoria, a las cuales tambin se acude. Todas las tarjetas del bus escuchan, y se tendr que encontrar en primer lugar una tarjeta que mediante el envo de una seal adecuada indique a la CPU que es responsable de la direccin que se ha introducido. Las dems tarjetas se despreocupan del resto de la comunicacin y quedan a la espera del prximo ciclo de transporte de datos que quizs les incumba a ellas. PROCESADOR Bus direcciones 20 20 20 20 de Bus de datos

8086 8088 80186 80188

16 8 16 8

Pgina 87

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

80286 80386 SX 80386 DX 80486 DX 80486 SX PENTIUM PENTIUM PRO

24 32 32 32 32 32 32

16 16 32 32 32 64 64

Fig. 2.3 Tabla de velocidad del bus de datos y direcciones con respecto al procesador utilizado.

Este mismo concepto es tambin la razn por la cual al utilizar tarjetas de ampliacin en un PC surgen problemas una y otra vez, si hay dos tarjetas que reclaman para ellas el mismo campo de direccin o campos de direccin que se solapan entre ellos. Los datos en si no se mandan al bus de direcciones sino al bus de datos. El bus XT tena solo 8 bits con lo cual slo poda transportar 1 byte a la vez. Si la CPU quera depositar el contenido de un registro de 16 bits o por valor de 16 bits, tena que desdoblarlos en dos bytes y efectuar la transferencia de datos uno detrs de otro. De todas maneras para los fabricantes de tarjetas de ampliacin, cuyos productos deben atenderse a este protocolo, es de una importancia bsica la regulacin del tiempo de las seales del bus, para poder trabajar de forma inmejorable con el PC. Pero precisamente este protocolo no ha sido nunca publicado por lBM con lo que se obliga a los fabricantes a medir las seales con la ayuda de tarjetas ya existentes e imitarlas. Por lo tanto no es de extraar que se pusieran en juego tolerancias que dejaron algunas tarjetas totalmente eliminada. Manejo de interrupciones.
Pgina 88

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Otro uso importante del bus es el manejo de interrupciones. Cuando la CPU instruye algn dispositivo de E/S para que haga algo, por lo general espera una interrupcin cuando termina el trabajo. La seal de interrupcin indica que requiere del bus. Aqu se presenta el mismo tipo de problema que con los ciclos del bus ordinario, ya que es posible que varios dispositivos quieran enviar una interrupcin al mismo tiempo. La solucin usual es asignar prioridades a los dispositivos, y usar un arbitro centralizado para dar prioridad a aquellos que tengan los tiempos ms crticos. Caractersticas de un bus. Un bus se caracteriza por la cantidad de informacin que se transmite en forma simultnea. Este volumen se expresa en bits y corresponde al nmero de lneas fsicas mediante las cuales se enva la informacin en forma simultnea. Un cable plano de 32 hilos permite la transmisin de 32 bits en paralelo. El trmino "ancho" se utiliza para designar el nmero de bits que un bus puede transmitir simultneamente. Por otra parte, la velocidad del bus se define a travs de su frecuencia (que se expresa en Hercios o Hertz), es decir el nmero de paquetes de datos que pueden ser enviados o recibidos por segundo. Cada vez que se envan o reciben estos datos podemos hablar de ciclo. De esta manera, es posible hallar la velocidad de transferencia mxima del bus (la cantidad de datos que puede transportar por unidad de tiempo) al multiplicar su ancho por la frecuencia. Por lo tanto, un bus con un ancho de 16 bits y una frecuencia de 133 MHz, tiene una velocidad de transferencia de: 16 * 133.106 = 2128*106 bit/s, o 2128*106/8 = 266*106 bytes/s o 266*106 /1000 = 266*103 KB/s o 259.7*103 /1000 = 266 MB/s

2.1.1 Bus Local Los sistemas operativos grfico-orientados como son Windows y OS/2 han creado un cuello de botella entre el procesador y sus perifricos para visualizacin en PCs con arquitecturas I/O estndar. Acercando las funciones perifricas con mayores requerimientos de ancho de banda al bus del microprocesador del sistema puede eliminarse este atascamiento. Cuando un diseo tipo Local Bus es utilizado, pueden obtenerse ganancias sustanciales
Pgina 89

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

en perfomance con interfaces grficas para el usuario (GUIs, graphical User Interfaces) y otras funciones de gran ancho de banda (full motion video, SCSI, LANs, etc Las ventajas ofrecidas por un diseo de bus local han motivado varias versiones, implementadas en distintas formas. Los beneficios de establecer un estndar abierto para buses I/O han sido claramente demostrados en la industria de la PC. Es importante que un nuevo estndar para buses locales se establezca para simplificar diseos, reducir costos e incrementar la seleccin de componentes Local Bus y placas de expansin.

Ante tanta demanda de velocidad en cuanto a rapidez de funcionamiento, los fabricantes no dudan en evolucionar sus productos hasta hacerlos funcionar a velocidades que hace 5 aos no nos cabran en la imaginacin, ahora bien, para poder aprovechar la velocidad de los dispositivos es necesario que el flujo de datos que existe entre ellos est a la altura; y es que de poco vale tener el disco duro ms rpido, la tarjeta ms rpida... si la velocidad de transmisin no supera unos mnimos.

Descripcin general.

El bus local PCI (Peripheral Component Interconnect) es un bus de alta perfomance de 32 o 64 bits con lneas de direccin y de datos multiplexadas. Su uso se orienta como mecanismo de interconexin entre controladores de perifricos altamente integrados, placas perifricas de expansin y sistemas procesador/memoria. Se ha definido como meta principal establecer un estndar industrial, con una arquitectura de bus local de alta perfomance que ofrezca bajo costo y permita diferenciacin. El punto fundamental es permitir nuevos valores en cuanto a precio y perfomance de los sistemas actuales, pero tambin es importante que el nuevo estndar se acomode a los requerimientos de sistemas futuros y sea aplicable a mltiples plataformas y arquitecturas. Por otro lado, mientras que las estructuras de bus local iniciales se centraban en aplicaciones para los sistemas de escritorio low-end hasta highend , el bus PCI tambin comprende los requerimientos de sistemas mviles
Pgina 90

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

(Laptops) hasta servidores departamentales. Ms aun, el requerimiento de 3,3 V del entorno mvil y la inminente transicin de los sistemas de escritorio de 5 V a 3,3 V son tenidos en cuenta por el estndar PCI, especificando ambas tensiones y describiendo un claro camino para la migracin de una a otra. Los componentes e interfaces agregables PCI son independientes del tipo de microprocesador, permitiendo una eficiente transicin a futuras generaciones de procesadores y al uso de arquitecturas multi-procesador. Esta independencia permite que el bus local PCI sea optimizado para funciones I/O, habilita la operacin concurrente del bus local con el sub-sistema procesador/memoria y acomoda mltiples perifricos de altas prestaciones adems de grficos (motion video, LAN, SCSI, FDDI, HDD, etc). Movimientos hacia visualisaciones de video y multimedia mejoradas (HDTV, 3D Graphics) y otras I/O de gran ancho de banda continuaran incrementando los requerimientos de ancho de banda para el bus local. En funcin de esto, una extensin transparente a 64 bits de los buses de datos y direcciones de 32 es definida, duplicando el ancho de banda del bus y ofreciendo compatibilidad hacia adelante y atrs con perifricos PCI de 32 y 64 bits. Ms aun, se ha especificado igual que antes un upgrade del reloj a 66 MHz, duplicando la capacidad del bus de 33 Mhz.. El bus local PCI ofrece beneficios adicionales a los usuarios. Registros de configuracin se especifican para los componentes y placas de expansin PCI. Con esto se logran sistemas con sofware de auto-configuracin automtica incluido, el que es corrido durante el encendido, evitndole al usuario la tarea de configurar el sistema manualmente (Plug & Play). En la siguiente figura se muestra una arquitectura PCI local bus tpica, lo que no implica lmites arquitecturales especficos.

Pgina 91

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

M ic r o p r o c . C ach e B r id g e / co n tro l d e m em o A u d io D R A M P C I L o cal B u s LA N SC SI In t e r f a c e B u s exp . F u n c. I/O b a s e


IS A /E IS A - M C

M o t io n V id e o

G r a f ic o s

Fig. 2.4 Comportamiento del Bus Local.

Aqu se observa que el sistema procesador/cache/memoria se encuentra conectado al bus PCI a travs de un Puente PCI. Este puente provee de un camino de baja latencia y gran ancho de banda, por el cual el procesador puede acceder a cualquier dispositivo mapeado en memoria o en los espacios para I/O y permite que cualquier Master PCI tenga acceso directo a memoria. El puente puede, opcionalmente, incluir funciones como buffering/posting y funciones centrales PCI (por ejemplo: arbitraje). Implementaciones tpicas del bus local PCI soportan hasta cuatro conectores para placas agregables. Los conectores son del tipo Micro Channel. La misma placa de expansin PCI puede ser utilizada en sistemas basados en buses ISA, EISA y MC. Las placas de expansin estn diseadas de forma tal que es necesario que el mother-board tenga un conector hembra conectado en paralelo con el bus del sistema.. Dos tipos de Back-plate se definen, uno compatible con el estndar ISA/EISA y otro para el MC.

Pgina 92

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Para proveer una rpida y facil transicin de 5 V a 3,3 V, PCI define tres tipos de conectores, uno para cada tensin y otro universalque soporta las dos. Tambin provee de tres tamaos de placa: corta, larga y variablemente corta (los sistemas no necesitan soportar los tres tipos de placas). Las largas incluyen una extensin ISA/EISA para permitir que sean utilizadas en sistemas de este tipo. Se ha asumido en el diseo de este estndar que placas de expansin tpicas de bajo ancho de banda mantendrn el estndar MC, ISA o EISA.

Estas son los conectores de las versiones de PCI que han salido al mercado:

Fig. 2.5. Como se puede apreciar en la figura, PCI 64 y el PCI-X tienen un aspecto idntico. Otra aclaracin: en los slot PCI-64, PCI-X se pueden utilizar tarjetas PCI de 32bits solo es necesario que sean de tipo PCI 2.1 en adelante.

Capacidades y beneficios del bus local PCI.

El bus local PCI fue especificado para establecer un estndar de bus local de alta perfomance para varias generaciones de productos. Las especificaciones proveen una seleccin de cualidades que permiten alcanzar mltiples puntos de perfomance/precio y puede habilitar funciones que permitan diferenciacin a nivel de componente. Las cualidades salientes pueden resumirse en :
Pgina 93

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Alta perfomance:

Upgrade transparente de 32 bits de datos a 64 bits a 33 MHz (132 MB/s a 264 MB/s pico) y de 32 a 64 bits a 66 MHz (264 MB/s a 528 MB/s pico). Variable lenght linear and cacheline wrap mode bursting tanto para lectura como para escritura, que mejora la perfomance grfica dependiente de escritura. Accesos aleatorios de baja latencia (60 nseg para 33 MHz y 30 para 60 MHz de latencia de acceso para escritura desde un master que ocupa el bus y un registro esclavo). Capaz de soportar concurrencia total con el subsistema procesador/memoria Bus sincrnico con operacin hasta 33 o 66 MHz. Arbitraje central oculto (solapados).

Bajo costo: 1* Optimizado para interconexin directa (no necesita lgica de conexin). Las especificaciones elctricas, para drivers y frecuencia se obtienen con tecnologias ASIC estndar y otros procesos tpicos. 2* La arquitectura multiplexada reduce el nmero de pines (47 para esclavos y 49 para maestros) y el tamao de los encapsulados o permite implementar funciones adicionales en encapsulados de tamao particular. 3* Las placas de expansin simples PCI trabajan en sistemas ISA, EISA y MC. (Con cambios mnimos a los diseos de chasis existentes), reduciendo inventarios y minimizando la confusin para el usuario final. Facilidad de uso 4* Permite soporte completo para auto configuracin de placas de expansin o componentes PCI. Los dispositivos PCI poseen registros con la informacin necesaria para esto. Longevidad:

Pgina 94

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

5* Por ser independiente del microprocesador soporta mltiples familias de estos como tambin lo har con las futuras generaciones (mediante puentes o integracin directa) 6* Soporta direccionamiento de 64 bits. 7* Entornos de 3,3 y 5 volts se han especificado. El camino de migracin entre tensiones permite una transicin gradual en la industria. Interoperabilidad/confiabilidad: 8* Pequeo factor de tamao en placas de expansin. 9* La sealizacin actual permite que las fuentes de alimentacin sean optimizadas para el uso esperado del sistema monitoreando placas de expansin que puedan sobrepasar la mxima potencia prevista para el sistema. 10*Ms de 2000 horas de simulacin elctrica SPICE con validacin de modelos en hardware. 11*Compatibilidad hacia adelante y atrs de 32 y 64 bits en placas de expansin y componentes. 12*Compatibilidad hacia adelante y atrs de 33 y 66 MHz en placas de expansin y componentes. 13*Confiabilidad incrementada y interoperabilidad de placas de expansin mediante la comprensin de los requerimientos de carga y frecuencia del bus local a nivel componentes, eliminando buffers y lgica de pegado. 14*Conectores de expansin tipo MC. Flexibilidad 15*Capacidad total multi-maestro, permitiendo que cualquier maestro PCI pueda acceder puerto a puerto con cualquier esclavo PCI. 16*Un slot compartido acomoda tanto a placas estndar ISA, EISA o MC como a placas de expansin PCI. Integridad en los datos: 17*Provee paridad tanto en datos como en direcciones, y permite la implementacin de plataformas robustas Compatibilidad de software: 18*Los componentes PCI son totalmente compatibles con drivers y aplicaciones existentes.
Pgina 95

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Definicin de las seales.

La interface PCI requiere un mnimo para un dispositivo target-only de 47 lneas y un master 49, para manejar datos y direccionamiento, control de la interface, arbitraje y funciones del sistema.. La siguiente figura muestra estas lneas en grupos funcionales, con las necesarias a la derecha y las opcionales a la izquierda. Los sentidos de las flechas son para un dispositivo mastertarget. Las lneas pueden ser de distinto tipo, a saber, las de entrada son estndar, las de salida son tipo totem pole, otras son tri-state, sustained tristate y tambin hay open drain.

L N E A S N E C E S A R IA S

L N E A S O P C IO N A L E S

A D [ 3 1 : :0 0 ] D A TO S Y D IR E C C IO N E S C /B E [ 3 : :0 ] P AR FR A M E # TR D Y # C O N TR O L D E IN T E R F A C E IR D Y # S TO P # D E V S E L# ID S E L R E P O R TE D E E RRO RE S A R B ITR A J E (S O L O M A S T E R S ) S IS T E M A P E RR# S E RR# RE Q # G N T# C LK R S T# D I S P O S I T IV O P CI

A D [6 4 ::3 2 ] C / B E [7 :: 4 ] P A R 64 R E Q 64# A C K 64# LO C K # IN T A # IN T B # IN T C # IN T D # S BO# S DONE TD I TC O TC K TM S TR S T# CAC HE I N T E R R U P C IO N E S C O N TR O L D E IN T E R F A C E

E X T E N S I N A 6 4 B IT S

JTA G

Fig. 2.6 Vista del bus local de una motherboard.

Fig. 2.7 Bus local.

2.1.2 Bus de datos.

Pgina 96

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El Bus de Datos trabaja en conjuncin con el Bus de Direcciones para transportar los datos a travs del computador. El tamao del Bus de Datos puede ser de 16, 32 o 64 bits. Teniendo en cuenta las mencionadas limitaciones del bus AT y la infalibilidad de los buses EISA y MCA para asentarse en el mercado, en estos aos se han ideado otros conceptos de bus. Se inici con el llamado Vesa Local Bus (VLBus), que fue concebido y propagado independientemente por el comit VESA, que se propuso el definir estndares.

Los procesadores 80x86 utilizan el bus de datos para intercambiar informacin entre los diferentes componentes del sistema. El tamao de stos buses es variable dependiendo del tipo de procesador, por esta razn es comn pensar en el tamao del bus como una medida del "tamao" del procesador, puede haber buses de datos de 8 (8088, 80188), 16 (8086, 80186, 80286), 32 (80386, 80486) 64 lneas (Pentium, Pentium Pro). En cada lnea del bus de datos se transmite un bit de informacin pero un sistema no est limitado a manejar informacin de acuerdo al tamao del bus de datos, es decir, un bus de 32 bits no est limitado a trabajar con tipos de datos mximos de 32 bits. El tamao del bus de datos por otro lado si limita el nmero de bits que el sistema puede manejar por cada ciclo de memoria de tal manera que un sistema de 16 bits necesita dos ciclos de memoria para manejar un tipo de dato de 32 bits, naturalmente pero no necesariamente, un sistema de 32 bits es el doble de rpido que un sistema de 16 bits, la limitacin es porque existen otros factores que influyen en el rendimiento de un sistema. Este bus mueve los datos entre los dispositivos del hardware: de Entrada como el Teclado, el Escner, el Ratn, etc.; de salida como la Impresora, el Monitor o la tarjeta de Sonido; y de Almacenamiento como el Disco Duro, el Diskette o la Memoria-Flash. Transmite informacin entre la CPU y los perifricos.

Pgina 97

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig. 2.8 Bus de datos.

Estas transferencias que se dan a travs del Bus de Datos son gobernadas por varios dispositivos y mtodos, de los cuales el Controlador PCI, "Peripheral Component Interconnect", Interconexin de componentes Perifricos, es uno de los principales. Su trabajo equivale, simplificando mucho el asunto, a una central de semforos para el trfico en las calles de una ciudad.

Pgina 98

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig. 2.9 Cable de datos de 80 hilos.

Pgina 99

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig. 2.10. Los datos que son puestos en la pila o tomados de la pila usualmente son tomados del bus de datos o puestos por la pila en el bus de datos:

Pgina 100

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

2.1.3 Bus de direcciones. El bus de direcciones es el encargado de diferenciar las ubicaciones fsicas de cada elemento de un sistema de cmputo, sea memoria elemento de E/S, cuando un programa necesita tener acceso a un elemento determinado del sistema coloca su direccin en el bus de direcciones, los circuitos electrnicos asociados sea con la memoria con un dispositivo de E/S son los encargados de reconocer sta direccin y consecuentemente colocar los datos correspondientes en el bus de datos. Con una sola lnea de direccin es posible tener acceso a dos elementos diferentes, con n lneas de direccin se puede acceder a 2n direcciones diferentes, por lo tanto el nmero de bits de un bus de direcciones determina la cantidad mxima de direcciones de memoria que un sistema puede acceder. Un procesador Pentium tiene un bus de direcciones de 32 bits por lo que su capacidad fsica real de direccionamiento de memoria de de 4 Gigabytes, utilizando la tcnica de segmentacin stos procesadores pueden acceder a un mayor nmero de direcciones de memoria.

El Bus de Direcciones, por otra parte, est vinculado al bloque de Control de la CPU para tomar y colocar datos en el Sub-sistema de Memoria durante la ejecucin de los procesos de cmputo, Una tarjeta-madre tipo ATX tiene tantas pistas elctricas destinadas a buses, como anchos sean los Canales de Buses del Microprocesador de la CPU: 64 para el Bus de datos y 32 para el Bus de Direcciones. El "ancho de canal" explica la cantidad de bits que pueden ser transferidos simultneamente. As, el Bus de datos transfiere 8 bytes a la vez. Para el Bus de Direcciones, el "ancho de canal" explica as mismo la cantidad de ubicaciones o Direcciones diferentes que el microprocesador puede alcanzar. Esa cantidad de ubicaciones resulta de elevar el 2 a la 32 potencia. "2" porque son dos las seales binarias, los bits 1 y 0; y "32 potencia" porque
Pgina 101

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

las 32 pistas del Bus de Direcciones son, en un instante dado, un conjunto de 32 bits. As, el Canal de Direcciones del Microprocesador para una PC-ATX puede "direccionar" ms de 4 mil millones de combinaciones diferentes para el conjunto de 32 bits de su Bus.

.
Fig. 2.11. En el diagrama se ven los buses de direccin, datos, y control, que van desde el CPU a la memoria RAM, ROM, la entrada/salida, etc.

2.1.3 (Bus

Fig. 2.12 Comportamiento de un bus de direcciones.

Bus de control de

sistema).

Pgina 102

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El bus de control es una coleccin de lneas que transportan un conjunto de seales cuyo propsito es la sincrona de todas las operaciones efectuadas por el CPU con los diferentes subsistemas de un equipo de cmputo, destacan las lneas para escritura (write) y lectura (read) de datos, el reloj del sistema, lneas de interrupcin, lneas de estado, etc. El uso de stas lneas se comprender mejor conforme se avance en ste curso. Los procesadores de la familia 80x86 proveen dos espacios diferentes de direccionamiento, uno para la memoria y otro para la E/S, mientras que el direccionamiento de memoria vara segn el procesador, las lneas de E/S son siempre de 16 bits, lo que permite direccionar 65,536 localidades diferentes. Algunas lneas de control son las encargadas de decidir qu direcciones son para memoria y cules son para E/S. El Bus de Control transporta seales de estado de las operaciones efectuadas por el CPU con las dems unidades.

Organiza y redirige la informacin hacia el bus pertinente para la informacin que se tiene que transmitir. Es el bus encargado de hacer el direccionamiento, quin realiza toda la funcin de direccionar es el controlador, diferente para cada tipo de dispositivo.

Pgina 103

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig. 2.13 Comportamiento del bus de control o de sistema, al interactuar con otros buses-

2.1.5 Buses normalizados SCSI: Esta es la norma original, a partir de la cual se desarrollaron todas las dems. El ancho de bus es de 8 bits. No permite una longitud de bus mayor de 6 metros y una velocidad de transferencia terica de hasta 5MB/s, aunque en la prctica no se alcanzan velociades superiores a los 2MB/s a causa de los perifricos conectados. SCSI-II:

Pgina 104

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Esta versin no es ms que una revisin de la SCSI, por lo que solo le aporta nuevos comandos de control. La velocidad de transferencia sigue en la misma lnea que le SCSI. Fast SCSI-II: Esta si que es una versin nueva, que ofrece velocidades de hasta 10MB/s, en modo sncrono, siempre de forma terica. Wide SCSI: Nueva versin de la norma SCSI que ofrece un ancho de bus de 16 bits, lo que dobla (tericamente) la velocidad de transferencia, puesto que en una mismo ciclo se transmiten el doble de bytes. Existen adaptadores Wide SCSI - SCSI, por lo que este tipo de perifricos pueden ser usados en un Amiga. Differencial SCSI: Esta versin SCSI utiliza un sistema de cableado diferencial en sus lneas, lo que permite extender la longitud del bus hasta 25 metros. Existen adaptadores Differencial SCSI - SCSI, por lo que este tipo de perifricos pueden ser usados en un Amiga. Fast Wide SCSI: Nueva revisin de la norma Wide SCSI, que ofrece un ancho de bus bien de 16 o de 32 bits, aunque esta ltima variante es muy rara. *Tipos de buses normalizdos ms comunes: El Chipset marca las caractersticas del bus de la CPU Tipos de buses de expansin ISA Usado en los primeros PC. Es de ocho bits por que usa ocho lneas para comunicarse con tarjeta de placas. Tambin hay de 16 bits. Caractersticas: Baja capacidad y amplia difusin. 8 bits 16 bits NCA Es un ISD extendido de 32 bits. Es compatible con el ISA. No se usa para orden de alto nivel avanzado y ms avanzado.

Pgina 105

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

EISD Es un ISD extendido de 32 y compatibles con ISD. No se usaba para ordenes de alto nivel. Bases locales Obtienen alto rendimiento entre la placa y las ranuras de expansin. Trabaja a 33 Mhz. TIPOS VL-BUS Instalado en los 468 de gama alta. No haba acceso directo a RDM, y tena que intervenir o la CPU o un canal DMD y esto tardaba mucho. PCI Evita el problema anterior creado por Intel. Caractersticas: - Bus de 32 bit de datos y direcciones. - Velocidad de 33 Mhz. - Capacidad de transferir datos de 132 Mb/seg. - Soporta el bus masterin (Bus master RMD) - Permite realizar casos concurrentes de escritura. - Reparte de forma inteligente la capacidad. Otorga ms capacidad al dispositivo que ms lo necesite. - Permite realizar casos concurrentes de escritura. - Soporta mximo 3 4 slots por cada bus PCI - Puede coexistir con buses de otro tipo. - Preparado para multitud de plataformas. No slo para PC. - Incorpora facilidades ( Plug & Play) - El coste de este tipo de buses es muy bajo. AG`P Especfico para controladores de vdeo. Bus de alto rendimiento de 32 bits y velocidad de 66 Mhz, su capacidad es muy superior. Buses normalizados de perifricos SCSI Entndart universal para la conversin de todo tipo de perifricos. Utilizado para dispositivos de almacenamiento. Caractersticas - Sencillez - Los dispositivos conectados son especficos para el Scasi, es decir, son de tipo SCASI, esto conlleva a que todos los dispositivos llevan conector de E y de S para el SCASI. - Contienen altas prestaciones. - Alto coste de adquisicin

Pgina 106

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

SCSI 1 Ocho bits permite conectar hasta 8 dispositivos. Realmente son slo siente dispositivos, ya que uno lo ocupa la controladora. La transferencia es de 3,3. Mb/seg. Hasta 5 Mb/seg. SCSI 2 Se mejora la velocidad. Hay cuatro tipos de SCSI . Normal 8 bitss 5 Mb/seg Fast 8 bits 10 Mb/seg Wide 16 bits 10 Mb/seg Fast-Wide 16 bits 20 Mb/seg Ultra SCSI: Sali en 1996, aumenta las prestaciones del SCSI. Compatible con Fast-SCSI 2 y con Fast/Wide-SCSI 2. Para buses de 8 bits. Alcanza los 20 Mb/seg, y para buswes de 16 bits llega hasta 40 Mb/seg. SCSI 3: Es otro conjunto de estndares, muy especializado. Por ejemplo, uno de esos conjuntos est orientado a serie en fibra ptica, y alcanza una gran velocidad en este campo. SCSI 3 ya no es compatible con los otros, a favor de la velocidad. USB: (universal serial Bus). La informacin se transmite en serie. Su objetivo es superar los inconvenientes de la conexin entre perifricos y ordenador. IEEE 1394 Tiene los mismos objetvos (wire-fire)

Fig 2.14. Ejemplos de los tipos de buses con el micro Motorola MC68000.
Pgina 107

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Caractersticas: Bus interno: 16 bits Unidad Aritmetico Lgica (ALU) puede operar sobre 16 bits directamente Registros internos de 32 bits (Datos y Direcciones) La Entrada/Salida esta mapeada en memoria (Intel utiliza buses diferentes para entrada/salida) Bus de datos: 16 bits Bus de direcciones: 32 bits (pero solo utiliza las 24 lneas menos significativas). La capacidad operativa del bus depende de: la inteligencia del sistema, la velocidad de ste, y la "anchura" del bus (nmero de conductos de datos que operan en paralelo). Bus de Bus de direcciones datos (bits) (bits) 20 16 20 8 24 16 32 16

Procesadores

808680186 808880188 80286 80386 SX 80386 DX 80486 SX 32 32 80486 DX PENTIUM PENTIUM II/III/IV AMD K5/K6/K7 32 64 AMD ATHLON/THUNDERBIRD AMD ATHLON XP/MP INTEL ITANIUM 32/64 64/128 AMD ATHLON64 Fig. 2.15. Tabla de los diferentes procesadores que ha habido hasta ahora y su capacidad de bus.

Conjunto de chips El conjunto de chips es el componente que enva datos entre los distintos buses del equipo para que todos los componentes que forman el equipo puedan a su vez comunicarse entre s. Originalmente, elconjunto de

Pgina 108

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

chips estaba compuesto por un gran nmero de chips electrnicos (de all su nombre). Por lo general, presenta dos componentes: El Puente Norte (que tambin se conoce como controlador de memoria, se encarga de controlar las transferencias entre el procesador y la memoria RAM. Se encuentra ubicado fsicamente cerca del procesador. Tambin se lo conoce como GMCH que significa Concentrador de controladores grficos y de memoria. El Puente Sur (tambin denominado controlador de entrada/salida o controlador de expansin) administra las comunicaciones entre los distintos dispositivos perifricos de entrada-salida. Tambin se lo conoce como ICH (Concentrador controlador de E/S). Por lo general, se utiliza el trmino puente para designar un componente de interconexin entre dos buses.

Fig. de

2.16. Conexin buses mediante puentes.

Es interesante tener en cuenta que para que dos buses se comuniquen entre si, deben poseer el mismo ancho. Esto explica por qu los mdulos de memoria RAM a veces deben instalarse en pares (por ejemplo, los primeros chips Pentium que tenan buses de procesador de 64 bits, necesitaban dos mdulos de memoria con un ancho de 32 bits cada uno).

Norma

Ancho del Velocidad del Ancho bus (bits) bus (MHz) banda

de

Pgina 109

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

(MB/seg.) ISA 8 bits ISA 16 bits 8 16 8,3 8,3 7,9 15,9

Arquitectura estndar industrial extendida (EISA, Extended Industry Standard Architecture) 32 Bus local VESA (VESA Local Bus) 32 PCI 32 bits PCI 64 bits 2,1 AGP AGP (Modo x2) AGP (Modo x4) AGP (Modo x8) ATA33 ATA100 ATA133 ATA serial (S-ATA, Serial ATA) 32 64 32 32 32 32 16 16 16 1

8,3 33 33 66 66 66x2 66x4 66x8 33 50 66

31,8 127,2 127,2 508,6 254,3 528 1056 2112 33 100 133 180

ATA serial II (S-ATA2, Serial ATA II) 2 USB USB 2,0 1 1

380 1,5 60

Pgina 110

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

FireWire FireWire 2 SCSI-1 SCSI-2 - Fast SCSI-2 - Wide SCSI-2 - Fast Wide 32 bits SCSI-3 - Ultra SCSI-3 - Ultra Wide SCSI-3 Ultra 2 SCSI-3 - Ultra 2 Wide SCSI-3 - Ultra 160 (Ultra 3) SCSI-3 - Ultra 320 (Ultra 4) SCSI-3 - Ultra 640 (Ultra 5)

1 1 8 8 16 32 8 16 8 16 16 16 16 4,77 10 10 10 20 20 40 40 80 80 DDR 80 QDR

100 200 5 10 20 40 20 40 40 80 160 320 640

Fig. 2.17. Especificaciones relativas a los buses ms comunes.

2.2 Direccionamiento Los llamados modos de direccionamiento son las diferentes maneras de especificar en informtica un operando dentro de una instruccin (lenguaje ensamblador). Cmo se especifican e interpretan las direcciones de memoria segn las instrucciones. Un modo de direccionamiento especifica la forma de calcular la direccin de memoria efectiva de un operando mediante el uso de la informacin contenida
Pgina 111

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

en registros y / o constantes, contenida dentro de una instruccin de la mquina o en otra parte. Cuntos modos de direccionamiento? Diferentes arquitecturas de computadores varan mucho en cuanto al nmero de modos de direccionamiento que ofrecen desde el hardware. Eliminar los modos de direccionamiento ms complejos podra presentar una serie de beneficios, aunque podra requerir de instrucciones adicionales, e incluso de otro registro. Se ha comprobado que el diseo de CPUs segmentadas es mucho ms fcil si los nicos modos de direccionamiento que proporcionan son simples. La mayora de las mquinas RISC disponen de apenas cinco modos de direccionamiento simple, mientras que otras mquinas CISC tales como el DEC VAX tienen ms de una docena de modos de direccionamiento, algunos de ellos demasiado complejos. El mainframe IBM System/360 dispona nicamente de tres modos de direccionamiento; algunos ms fueron aadidos posteriormente para el System/390. Cuando existen solo unos cuantos modos, estos van codificados directamente dentro de la propia instruccin (Un ejemplo lo podemos encontrar en el IBM/390, y en la mayora de los RISC). Sin embargo, cuando hay demasiados modos, a menudo suele reservarse un campo especfico en la propia instruccin, para especificar dicho modo de direccionamiento. El DEC VAX permita mltiples operandos en memoria en la mayora de sus instrucciones, y reservaba los primeros bits de cada operando para indicar el modo de direccionamiento de ese operando en particular. Incluso en computadores con muchos modos de direccionamiento, algunas medidas realizadas a programas indican que los modos ms simples representan cerca del 90% o ms de todos los modos de direccionamiento utilizados. Dado que la mayora de estas medidas son obtenidas a partir de cdigos de alto nivel generados a partir de compiladores, nos da una idea de las limitaciones que presentan los compiladores que se utilizan.

2.2.1 Modelo real El modo real (tambin llamado modo de direccin real en los manuales de Intel) es un modo de operacin del 80286 y posteriores CPUs compatibles de la arquitectura x86. El modo real est caracterizado por 20 bits de espacio de direcciones segmentado (significando que solamente se puede direccionar 1 MB de memoria), acceso directo del software a las rutinas del BIOS y el hardware perifrico, y no tiene conceptos de proteccin de memoria o multitarea a nivel de hardware. Todos los CPUs x86 de las series del 80286 y
Pgina 112

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

posteriores empiezan en modo real al encenderse el computador; los CPUs 80186 y anteriores tenan solo un modo operacional, que era equivalente al modo real en chips posteriores. La arquitectura 286 introdujo el modo protegido, permitiendo, entre otras cosas, la proteccin de la memoria a nivel de hardware. Sin embargo, usar estas nuevas caractersticas requiri instrucciones de software adicionales no necesarias previamente. Puesto que una especificacin de diseo primaria de los microprocesadores x86 es que sean completamente compatibles hacia atrs con el software escrito para todos los chips x86 antes de ellos, el chip 286 fue hecho para iniciarse en modo real - es decir, en un modo que tena apagadas las nuevas caractersticas de proteccin de memoria, de modo que pudieran correr sistemas operativos escritos para microprocesadores ms viejos. Al da de hoy, incluso los ms recientes CPUs x86 se inician en modo real al encenderse, y pueden correr el software escrito para cualquier chip anterior. Los sistemas operativos DOS (MS-DOS, DR-DOS, etc.) trabajan en modo real. Las primeras versiones de Microsoft Windows, que eran esencialmente un shell de interface grfica de usuario corriendo sobre el DOS, no eran realmente un sistema operativo por s mismas, corran en modo real, hasta Windows 3.0, que poda correr tanto en modo real como en modo protegido. Windows 3.0 poda correr de hecho en dos sabores de modo protegido - el modo estndar, que corra usando modo protegido, y el modo mejorado 386, que adems usaba direccionamiento de 32 bits y por lo tanto no corra en un 286 (que a pesar de tener modo protegido, segua siendo un chip de 16 bits; los registros de 32 bits fueron introducidos en la serie 80386). El Windows 3.1 removi el soporte para el modo real, y fue el primer ambiente operativo de uso masivo que requiri por lo menos un procesador 80286 (no contando con el Windows 2.0 que no fue un producto masivo). Casi todos los sistemas operativos modernos x86 (Linux, Windows 95 y posteriores, OS/2, etc.) cambian el CPU a modo protegido o a modo largo en el arranque.

2.2.2 Modelo protegido

Pgina 113

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El direccionamiento de memoria en modo protegido (a partir del 80286 y posteriores) permite acceder a datos y programas localizados por encima y dentro del primer megabyte de memoria. Para direccionar esta seccin extendida el sistema de memoria se requiere un cambio en el esquema de direccionamiento de segmento ms desplazamiento usado en el modo real. Cuando los datos y programa se direccionan la memoria extendida, se sigue utilizando la direccin de desplazamiento para acceder a la informacin en el segmento de memoria. Una diferencia consiste en la direccin del segmento ya que no existe en modo protegido. En lugar de una direccin de segmento, el registro de segmento contiene un SELECTOR que elige un descriptor de una tabla. El descriptor especifica la ubicacin del segmento en memoria, su longitud y sus derechos de acceso. Dado que el registro de segmento y la direccin de desplazamiento an acceden a la memoria, las instrucciones del modo protegido son idnticas a las de modo real. De hecho, la mayora de los programas escritos para funcionar en modo real funcionarn sin cambios en el modo protegido. La diferencia entre los dos modos es la forma en que el microprocesador interpreta el registro de segmento para acceder al segmento de memoria. Otra diferencia, en los 80386 y posteriores, es que en modo protegido la direccin de desplazamiento puede ser un nmero de 32 bits en vez de utilizar uno de 16 bits como en modo real. Es por esto que puede direccionar hasta 4 Gb de longitud. El SELECTOR, ubicado en el registro del segmento, elige uno de 8192 descriptores en una de las dos tablas de descriptores. El DESCRIPTOR especifica la ubicacin, la longitud y los derechos de acceso del segmento de memoria, aunque no directamente como en el modo real. Por ejemplo, en el modo real, si CS=0008H, el segmento de cdigo inicia en la localidad 00080H. En modo protegido, este nmero de segmento puede direccionar cualquier localidad de memoria en todo el sistema para el segmento de cdigo. Existen dos tablas de descriptores utilizadas con los registros de segmentos: una contiene descriptores globales y otra, descriptores locales. Los descriptores globales contienen las definiciones de los segmentos que se aplican a todos los programas, mientras que los descriptores locales son generalmente exclusivos de una aplicacin. Podramos llamar descriptor de sistema a un descriptor global, y descriptor de aplicacin a uno local. Cada tabla de descriptores contendr 8192 entradas, por lo tanto una aplicacin podra disponer en cualquier momento de 16.384 descriptores. Puesto que un descriptor describe un segmento de memoria, esto permite que puedan ser descriptos hasta 16.384 segmentos de una aplicacin. Fig. 2.18. Descriptor del 80286 00000000 00000000
Pgina 114

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

7 5 3 1 Derechos de Acceso Base (B15-B0) Limite (L15-L0) Base (B23-B16)

6 4 2 0

Fig. 2.19. Descriptor del 80386 al Pentium II G 7 5 3 1 BASE (B13-B24) Derechos de Acceso Base (B15-B0) Limite (L15-L0) Base (B23-B16) D O A V LIMITE (L19L16) 6 4 2 0

Llamaremos DIRECCION DE BASE a la parte del descriptor que indica el inicio de un segmento de memoria. Para el microprocesador 80286, la direccin base es de 24 bits, as que los segmentos inician en cualquier localidad dentro de sus 16 MB de memoria. Los 80386 y posteriores emplean una direccin de base de 32 bits, que permite que los segmentos incien en cualquier localidad de sus 4 Gb de memoria. Es por lo dicho anteriormente que podemos ver que el descriptor del 80286 es compatible con el 80386 al Pentium II, ya que sus 16 bits ms significativos son los 0000H. El LIMITE DE SEGMENTO contiene la ltima direccin de desplazamiento del segmento. A partir del 386 hasta el Pentium se incluy el bit G o llamado BIT DE GRANULARIDAD. Si este G=0, el lmite especifica un lmite de segmento entre 00000H y FFFFF. Si G=1, el valor del lmite se multiplica por 4 KB (agregando XXXXH). El lmite para G=1 va entonces desde 00000XXXH hasta FFFFFXXXH. Esto permite una longitud de segmento de 4 KB a 4 GB en intervalos de 4 KB. En el descriptor del 80386 y posteriores, el bit AV es usado por algunos sistemas operativos para indicar que el segmento esta disponible (AV=1) o que no lo esta (AV=0). El bit D indica la forma en que las intrucciones de los microprocesadores 80386 al Pentium II acceden a los registros y a los datos de memoria tanto en modo protegido como en el real. Si D=0, las instrucciones son de 16 bits, compatibles con los microprocesadores 8086 al 80286. Esto significa que las instrucciones utilizan registros y direcciones de desplazamiento de 16 bits en forma predeterminada. Si D=1, las instrucciones

Pgina 115

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

son de 32 bits. Por omisin, el modo de instrucciones de 32 bits da por hecho que todas las direcciones de desplazamiento y los registros son de 32 bits. 7 P Fig.2.20 A=0 El segmento no ha sido accedido A=1 El segmento ha sido accedido E=0 El descriptor describe a un segmento de datos ED=0 El segmento se expande hacia arriba (segmento de datos) ED=1 El segmento se expande hacia abajo (segmento de pila) W=0 Los datos no pueden se escritos W=1 Los datos pueden se escritos E=1 El descriptor describe a un segmento de cdigo C=0 Ignora el nivel de privilegio del descriptor C=1 Honra el nivel de privilegio R=0 El segmento de cdigo no puede leerse R=1 El segmento de cdigo puede leerse S=0 S=1 Descriptor de sistema Descriptor de segmento de cdigo o datos 6 DPL 5 4 S 3 E 2 ED/C 1 R/W 0 A

DLP = Establece el nivel de privilegio del descriptor P=0 Descriptor sin definir P=1 El segmento contiene una base y lmite vlidos. En modo protegido, el byte de derechos de acceso controla el acceso al segmento de memoria. Este byte define el funcionamiento del segmento en el sistema. El byte de derechos de acceso permite un control completo sobre el segmento. Si el segmento es de datos, especifica el sentido de crecimiento; si el segmento crece ms all de su lmite, el programa del microprocesador es interrumpido, indicando un error de proteccin general. Se puede especificar si un segmento de datos puede ser escrito o si est protegido contra escritura. E segmento de cdigo es controlado en forma similar y su lectura puede ser inhibida para proteger el software. Los descriptores son seleccionados mediante el registro de segmento de la tabla de descriptores. El registro de segmento contiene un campo de seleccin de 13 bits, un bit selector de tabla y un campo de nivel de privilegio de acceso, El selector de 13 bits selecciona uno de los 8192 descriptores de la tabla. El bit TI elige
Pgina 116

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

entre la tabla de descriptores globales (TI=0) o los descriptores locales (TI=1). El RPL (nivel de privilegio de acceso) define el nivel de privilegio de un segmento de memoria. El nivel de privilegio ms alto es 00 y el ms bajo 11. Si el nivel de privilegio solicitado coincide o tiene mayor prioridad que el nivel de privilegio establecido por el byte de derechos de acceso, se permite el acceso. Por ejemplo si el nivel de privilegio asociado es 10 y el byte de derechos de acceso establece un nivel de privilegio de 11 para el segmento, el acceso es autorizado ya que el nivel de privilegio 10 tiene mayor prioridad que 11 (los niveles de privilegio se utilizan en ambientes multiusuario y el sistema indica que normalmente cuando se presenta una violacin privilegio).

2.2.3 Modo real virtual 80386 DX y SX Introducido en 1985, el 80386 DX supera un nuevo escaln en el avance tecnolgico en microprocesadores. Se incorpora una nueva ampliacin y surge el nmero mgico, el 32. Los buses de datos y de direcciones se amplan hasta 32 lneas de datos, ocurriendo lo mismo con el tamao de los registros. Esta ampliacin supone un incremento en la memoria RAM fsica instalada. Puede direccionar 4 Gb de memoria fsica (DX significa Double word eXternal) y 64 Tb de memoria virtual, una cifra que en la actualidad est an muy por encima de las posibilidades econmicas de los usuarios (a ver quin instala 4.000 Megabytes de RAM, unos 20 millones de pesetas). Arranca en modo real, al igual que el 80286, e incorpora un nuevo modo de operacin: el modo real virtual del 8086, que permite tener varias sesiones 8086 trabajando simultneamente simulando una especie de pseudomultitarea. En los microprocesadores anteriores la gestin de memoria se realizaba en segmentos de 16 Kb. Con el 80286 este tamao de los segmentos de la memoria se hacan muy pequeos y el programador tena que trabajar ms para adaptarse a una gran cantidad de segmentos. El 80386 permite la definicin de segmentos de memoria de tamao variable. Aparte, Intel corrigi la deficiencia del downshifting, pudindose realizar por software. Otra de las innovaciones en la inclusin de una memoria cache interna en el chip destinada a almacenar instrucciones provenientes de memoria sin necesidad de que la unidad de ejecucin intervenga. Intel comete un nuevo
Pgina 117

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

error en el diseo del micro que genera inexactitudes en el clculo de 32 bits, que se presentan en los micros lanzados al mercado hasta mayo del 1987. Los modelos corregidos van etiquetados con una doble sigma mayscula o con el identificativo DX. Este error afectaba a las operaciones de multiplicacin de 32 bits. Ocurra bajo las siguientes circunstancias: Se usa la memoria virtual y se produce una demanda de pgina. El coprocesador matemtico 80387 est instalado y en uso. Debe ocurrir una operacin de acceso directo a memoria (DMA). El 80386 debe estar en estado de espera (Wait State). Se detecta un segundo bug denominado POPAD bug. Su efecto es el vaciado del registro acumulador EAX cuando se ejecuta una instruccin de acceso a memoria inmediatamente despus de la ejecucin de la instruccin POPAD. Aparecen variaciones que afectan al consumo de energa pensadas para porttiles, se trataba de los 80386SL (Slow Low power) y 80386SLC (Slow Low power Cache), que es propiedad de IBM aunque lo fabrique Intel. Las frecuencias de funcionamiento eran de 12, 20, 25 y 33 MHz. El 80386SX (SX significa Simple word eXternal) tiene las mismas caractersticas que el 80386DX, salvo que el bus de direcciones externo se reduce a 16 bits. Introducido en 1988 daba la potencia de un 80386 a precio de un 80286. Durante mucho tiempo se rumore que el P9 podra ser compatible con los zcalos 80286, pero al final no fue as. La razn es que el 80286 multiplexa todos sus buses para conseguir con menos lneas el mismo resultado (menor coste) El 80386SX slo multiplexa el bus de direcciones. Las frecuencias de funcionamiento eran de 16, 20, 25 y 33 MHz. 80486DX 80486SX El 80486DX sali al mercado en 1989. La estructura interna hablando en trminos numricos es igual a la de un 80386. El tamao de los registros y de los buses son de 32 bits. Mantiene los tres modos de operacin: real, protegido y real virtual. Las diferencias reales con los 80386DX son que tiene un flag ms, un estado de excepcin ms, 2 bits ms en la tabla de entrada de pginas, 6 instrucciones y los registros de control tienen una longitud de 9 bits.
Pgina 118

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Se realizan tambin cambios en la arquitectura interna. Se crea un mayor nmero de lneas hardware lo que implica un incremento en la velocidad. Se imponen reglas de diseo ms estrictas, lo que supone un reduccin del tamao del chip. Al reducirse el tamao se reduce tambin el consumo y consiguientemente la temperatura que alcanza el chip, con lo cual lo podemos hacer funcionar a un mayor nmero de ciclos de reloj, lo que supondr la aparicin de los Overdrives. Se incluye un coprocesador matemtico interno que dobla las prestaciones de un 80387 trabajando a la misma velocidad. Se logra un diseo mejor y la comunicacin entre el chip principal y el coprocesador matemtico es interna, lo que mejora la velocidad en las transferencias y unas sincronizaciones ms estrechas. La memoria cache (8 Kb) del microprocesador est dividida en 4 caches de 2 Kb cada una. Esto agiliza la ejecucin de algunas aplicaciones. Si se asigna una memoria cache secundaria (L2) el rendimiento del micro puede aumentar hasta un 30 por ciento ms. El 80486SX es igual que un 80486DX, slo que el coprocesador matemtico est inhabilitado. El coprocesador matemtico 80487SX es en realidad un 80486DX puro que desactiva por completo el 80486SX, sin que podamos retirarlo de la placa. Las velocidades a las que funcionan son de 25, 33, 40 y 50 MHz. Hay versin SL para porttiles.

Pgina 119

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

2.3 Temporizacin Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de acontecimientos que suceden en el exterior (contadores). Para la medida de tiempos se carga un registro con el valor adecuado y a continuacin dicho valor se va incrementando o decrementando al ritmo de los impulsos de reloj o algn mltiplo hasta que se desborde y llegue a 0, momento en el que se produce un aviso. Cuando se desean contar acontecimientos que se materializan por cambios de nivel o flancos en alguna de las patitas del microcontrolador, el mencionado registro se va incrementando o decrementando al ritmo de dichos impulsos.

Temporizacin sncrona

Fig.2.21

Pgina 120

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.2.22.

Fig. 2.23. El elemento fundamental del temporizador es un contador binario, encargado de contar los pulsos suministrados por algn circuito ascilador, con una base de tiempo estable y conocida. El simple hecho de contar pulsos de una
Pgina 121

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

duracin fija nos permite medir el tiempo con precisiones asombrosas, determnadas fundamentalmente por la estabilidad del generador de pulsos y por los circuitos electrnicos del contador binario. Sin embargo, un contador til debe tener ms elementos que permitan sacar provecho a se circuito bsico, es por ello que los microcontroladores utilizan un conjunto de circuitos auxiliares para poder manejar, con cierto nivel de libertad, las caractersticas bsicas del contador binario y convertir el conjunto en un temporizador/contador programable. Los temporizadores se utilizan debido a que hacer una lista completa es prcticamente imposible, pero algunos ejemplos de su aplicacin nos ayudarn a adentrarnos en los entresijos de su diseo y sacarle provecho a sus potencialidades. Estos ejemplo de su aplicacin son: Medicin de tiempo. Divisin de frecuencia. Medicin de periodo y frecuencia. Contero de eventos. Base de tiempo para otros perifricos. USART. PWM. CathDog. Caractersticas. En el mundo del diseo digital, los temporizadores constituyen perifricos muy tiles. Se disean con ciertas caractersticas que determinan el uso que podemos darle a un temporizador, veamos algunas: Longitud del contador: Los ms comunes son aquellos que tienen 8 16 bits, determina la cantidad mxima de pulsos que se pueden contar. Lectura/escritura: En general, los temporizadores pueden ser escritos o ledos por el procesador del microcontrolador. En algunos casos, donde el temporizador est vinculado a algn perifrico muy especfico, esta opcin puede no existir o estar limitada. Modos de trabajo: Existen, en principio dos: contador y temporizador. Como contador, se cuentan los pulsos desde una fuente externa al microcontrolador. Los pulsos contados pueden tener perodo variable. Como temporizador, se cuentan los pulsos suministrados por una fuente estable y conocida, que puede ser externa, o alguna fuente generada internamente por el microcontrolador. Forma de conteo: La forma tpica es el conteo ascendente, sin embargo, existen contadores con la opcin de configurar el modo de conteo, sea ste ascendente, descendente o de otro tipo especfico. Configuracin de activacin por frente: Permite establecer cuando se produce el conteo, si en el frente de subida del reloj o en el frente de cada del mismo. Configuracin del reloj: En la mayora de los casos la fuente de reloj es configurable. Incluso existen microcontroladores con abundante variedad de
Pgina 122

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

formas de configurar el reloj, de modo que se puedan obtener distintos tipos de bases de tiempo. Interrupciones: En la mayora de casos, los temporizadores tienen interrupciones asociadas, con el objetivo de notificar al procesador que ha ocurrido el cruce por cero o algn valor especfico en el registro de conteo. Caractersticas especiales: Muchos microcontroladores tienen temporizadores especializados para trabajar de conjunto con algunas de sus perifricos, o para ser utilizados en aplicaciones especficas.
Fig. 2.24. Esquema simplificado donde es posible observar que el contador est compuesto por tres bloques fundamentales: Contador binario, circuitos configurados y control, circuitos especializados de salida.

Estructura bsica de un temporizador/contador.


1) Contador binario: Es el elemento bsico del temporizadors/

contador y su misin es contar los pulsos del reloj. Hay dos propiedades esenciales a tener en cuenta, respecto a este componente: la cantidad de pulsos que puede contar y la posibilidad de controlar el sentido del conteo, sea ascendente o descendente. entre el contador binario y los circuitos externos. Es uno de los elementos que da valor aadido al simple contador binario.

2) Circuitos de configuracin y control: Constituyen la interfaz

Pgina 123

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

3) Circuitos

especializados de salida: Se utilizan para notificar, a otro elemento del sistema, sobre el estado del temporizador o acerca de la ocurrencia de un determinado evento.

El temporizador es un circuito digital, dispone de dos salidas al igual que un flip flop, una salida es la inversa de la otra, a diferencia del flip flop quin cuenta con dos estados estables, el temporizador solamente posee un estado estable, el otro estado es inestable, permanece en su estado estable, hasta que se activa con un pulso de entrada, una vez que se activa cambia a su estado inestable y ah permanece por un periodo fijo de tiempo tw , este tiempo lo determina una constante de tiempo RC externa que se conecta al temporizador, despus de que transcurre el tiempo tw , las salidas dos salidas del temporizador regresan a su estado estable, hasta que se activan otra vez. La finalidad de la temporizacin es retardar el paso de una seal desde un nodo del circuito hasta otro punto, el diseo de este circuito se realiza con un dispositivo que se conoce con el nombre de monoestable temporizador, ste elemento electrnico dispone de una entrada E y una salida S, se tienen tres temporizadores bsicos que se denominan; el primero, temporizacin a la activacin, el segundo se llama temporizacin a la desactivacin y el tercero es una combinacin de las dos anteriores, temporizacin a la activacin y desactivacin simultaneas. Se dispone de dos tipos de comportamiento en que se manifiestan las salidas de los temporizadores, "redisparables" y "no redisparables" y su entrada responde a dos tipos de disparo, "activacin" y "desactivacin". Retardo a la activacin. El temporizador con retardo a la activacin, es un circuito que produce una salida, despus de un tiempo intencionado y que se define como tw el cual sucede al activarse la entrada, se simboliza como sigue: S = [ E ta ]

Fig. 2.25. Frmula, smbolo y formas de onda "entrada/salida", del temporizador a la activacin.
Pgina 124

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Retardo a la desactivacin. Es el circuito que suprime una salida despus de darse un retardo intencionado y que se define como tw el cual sucede despus de haberse desactivado la entrada se modela con la siguiente ecuacin. S = [ E td } Fig. 2.25. Frmula, smbolo y formas de onda "entrada/salida", del temporizador a la desactivacin

2.3.1 Reloj de sistema. Diferentes factores determinan con qu rapidez su computadora ejecuta los trabajos. La Velocidad del Procesador es un factor. Pero qu es lo que determina la velocidad del procesador? La Velocidad del Procesador es afectada por: Reloj del Sistema = Un pulso electrnico usado para sincronizar el procesamiento. (Entre pulso y pulso solamente puede tener lugar una sola accin). Medido en megahertz (MHz) dnde 1 MHz= 1 milln de ciclos por segundo o gigahertz (GHz) donde 1 GHz = 1 ciclos de mil millones por segundo. De esto es lo que estn hablando cuando dicen que una computadora es una mquina de 2.4 GHz .La velocidad de su reloj es de 2.4 mil millones de ciclos por segundo. Cuanto ms grande el nmero = ms rpido el procesamiento.

Reloj del sistema El reloj de una computadora se utiliza para dos funciones principales:

Pgina 125

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

1. Para sincronizar las diversas operaciones que realizan los diferentes subcomponentes del sistema informtico. 2. Para saber la hora. El reloj fsicamente es un circuito integrado que emite una cantidad de pulsos por segundo, de manera constante. Al nmero de pulsos que emite el reloj cada segundo se llama Frecuencia del Reloj. La frecuencia del reloj se mide en Ciclos por Segundo, tambin llamados Hertzios, siendo cada ciclo un pulso del reloj. Como la frecuencia del reloj es de varios millones de pulsos por segundo se expresa habitualmente en Megaherzios. El reloj marca la velocidad de proceso de la computadora generando una seal peridica que es utilizada por todos los componentes del sistema informtico para sincronizar y coordinar las actividades operativas, evitando el que un componente maneje unos datos incorrectamente o que la velocidad de transmisin de datos entre dos componentes sea distinta. Cuanto mayor sea la frecuencia del reloj mayor ser la velocidad de proceso de la computadora y podr realizar mayor cantidad de instrucciones elementales en un segundo. El rango de frecuencia de los microprocesadores oscila entre los 4,77 megaherzios del primer PC diseado por IBM y los 200 mega herzios de las actuales computadoras basadas en los chips Intel Pentium. En mquinas de arquitectura Von Neumann la mayora de las operaciones son serializadas, esto significa que la computadora ejecuta los comandos en un orden preestablecido. Para asegurarnos de que todas las operaciones ocurren justo en el tiempo adecuado, las mquinas 8086 utilizan una seal alternante llamada el reloj del sistema. En su forma bsica, el reloj del sistema maneja toda la sincronizacin de un sistema de cmputo. El reloj del sistema es una seal elctrica en el bus de control que alterna entre los valores de cero y uno a una tasa dada. La frecuencia en la cual el reloj del sistema alterna entre cero y uno es llamada frecuencia del reloj de sistema. El tiempo que toma para cambiar de cero a uno y luego volver a cero se le llama periodo de reloj, tambin llamado ciclo de
Pgina 126

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

reloj. La frecuencia del reloj es simplemente el nmero de ciclos de reloj que ocurren en un segundo, en sistemas actuales, ste valor excede los 200 ciclos por segundo, siendo ya comn frecuencias del orden de los 366 Mhz. (Mega Hertz, que equivale a un milln de ciclos por segundo). Observe que el periodo de reloj es el valor inverso de la frecuencia, por lo tanto, para un sistema de 200 Mhz el periodo es igual a 5 nanosegundos. Para asegurar la sincronizacin, el CPU inicia una operacin ya sea en el flanco ascendente (cuando la seal cambia de cero a uno) o en el descendente (cuando la seal cambia de uno a cero). Como todas las operaciones de un CPU estn sincronizadas en torno a su reloj, un CPU no puede ejecutar operaciones ms rpido que la velocidad del reloj.

2.3.2 Reset del sistema Perro guardin o "Watchdog" Cuando el computador personal se bloquea por un fallo del software u otra causa, se pulsa el botn del reset y se reinicializa el sistema. Pero un microcontrolador funciona sin el control de un supervisor y de forma continuada las 24 horas del da. El Perro guardin consiste en un temporizador que, cuando se desborda y pasa por 0, provoca un reset automticamente en el sistema. Se debe disear el programa de trabajo que controla la tarea de forma que refresque o inicialice al Perro guardin antes de que provoque el reset. Si falla el programa o se bloquea, no se refrescar al Perro guardin y, al completar su temporizacin, "ladrar y ladrar" hasta provocar el reset. Un perro guardin (en ingls watchdog) es un mecanismo de seguridad que provoca un reset del sistema en caso de que ste se haya bloqueado. Consiste en un temporizador que ir continuamente decrementando un contador, inicialmente con un valor alto. Cuando este contador llegue a cero, se resetear el sistema. As que se debe disear el programa de manera que refresque o inicialice el perro guardin antes de que provoque el reset. Si el programa falla o se bloquea, al no poder actualizar el contador del perro guardin a su valor de inicio, ste llegar a decrementarse hasta cero y se resetear el sistema Proteccin ante fallo de alimentacin o "Brownout"

Pgina 127

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentacin (VDD) es inferior a un voltaje mnimo ("brownout"). Mientras el voltaje de alimentacin sea inferior al de brownout el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor.

2.3.3 Estados de espera. Generacin de estado de espera Cuando se conectan tarjetas al bus de la PC, un problema comn es igualar la velocidad de los ciclos del bus con la de las tarjetas. Es comn que una tarjeta sea ms lenta que el bus. As, el bus de la PC est diseado para resolver este problema. La seal READY del bus se puede usar para extender la longitud del ciclo del bus para igualar una tarjeta lenta o parar el bus del sistema hasta que se sincronice con el ciclo de la tarjeta. Como se mencion anteriormente, los ciclos del bus del 8088 normalmente son de cuatro pulsos y se describen por T1 hasta T4. En algunos ciclos el hardware de la PC, automticamente inserta un pulso ocioso extra llamado TW. La seal READY se usa para insertar estados nuevos o adicionales de espera. Debido a que los diferentes ciclos del bus requieren distintos tiempos, la seal READY se debe controlar de manera diferente. Generacin de estados de espera en ciclos de bus de memoria. El hardware de la PC no inserta estados de espera en los ciclos de lectura o escritura a memoria, sino que esto lo hace la tarjeta usando la seal READY. La figura 2.26 ilustra las seales de tiempo necesarias para generar un estado de espera para un ciclo de lectura o escritura a memoria.

Pgina 128

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig. 2.26. Tiempos de un estado de espera para ciclos de lectura o escritura a memoria. Los circuitos de la tarjeta madre muestran la seal READY en el flanco de subida del tiempo T2. Esta seal debe ser vlida (activo alto) 75 nanosegundos antes del flanco de subida de T2 para que no se genere un estado de espera. Si se requiere un estado de espera, la seal READY debe ser vlida (activo bajo) 60 nanosegundos antes del flanco de subida de T2. Si la seal READY se mantiene en bajo hasta el flanco de subida del siguiente pulso, se inserta un estado de espera adicional. Para las operaciones de lectura y escritura de E/S tambin se usa la seal READY, y los tiempos son los mismos que para acceso a memoria, excepto que la seal READY se muestrea en T3. Generacin de estados de espera en ciclos de bus de DMA La PC automticamente inserta un estado de espera en todos los ciclos de DMA en los canales 1, 2 y 3. No se insertan estados de espera en el canal 0; slo se usa para soportar el refresco de memoria y no est disponible para funciones normales de DMA. Para asegurar que un estado de espera adicional se inserta en el ciclo de DMA, la seal READY debe estar en bajo 135
Pgina 129

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

nanosegundos antes del flanco de bajada del estado SW1. Para asegurar que no se inserta un estado de espera adicional, la seal READY debe estar en alto 115 nanosegundos antes del flanco de bajada del siguiente pulso S. Pero bueno, lo que deben saber a mi entendimiento (y que tambien encontr en Wiki Tec?) es que el estado de espera es: Un estado de espera es un tiempo (Tw) adicional de reloj introducido entre T2 y T3 para alargar el ciclo del bus. Si se introduce un estado de espera, entonces el tiempo normal de acceso a la memoria (que es de 460 nseg con un reloj de 5 MHz) se alarga por un periodo de reloj (200 nseg) hasta 660 nseg. Para la generacin de un estado de espera se agrega un estado ocioso (0 Tw) entre T2 y T3 a partir de la seal READY ( que es la seal de verificacin de control de sincrona), extendiendo as la longitud del ciclo del bus para igualarlo a una tarjeta lenta o parar el bus del sistema hasta que se sincronice con el ciclo de la tarjeta (este control de sincrona vuelve a recaer sobre la seal READY) By KAOSK

2.4 Interrupciones de Hardware Ocurren cuando un dispositivo necesita atencin del procesador y genera una seal elctrica en la lnea IRQ que tiene asignada. Esta seal es recogida y procesada por el controlador de excepciones PIC antes de ser enviada al procesador, lo que puede realizarse de dos formas, segn el tipo de interrupcin sea enmascarable o no enmascarable.
Pgina 130

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Transferencia de datos por interrupcin. Las interrupciones alteran la secuencia normal de un programa para permitir una operacin de E/S. Son particularmente tiles con perifricos lentos o en aplicaciones donde la ocurrencia de datos a ser transferidos a la computadora es impredecible como en enlaces de comunicacin. La principal caracterstica es que : El intercambio de datos es iniciado por los dispositivos perifricos. La implementacin de tal sistema consiste en reemplazar el lazo de espera para la transferencia asncrona con un lazo equivalente en hardware para probar para una interrupcin externa. Durante cada ciclo de mquina el microprocesador checa la presencia de una seal de interrupcin. Para realizar una transferencia por interrupcin simple, ocurren generalmente los siguientes pasos : 1 Un dispositivo perifrico solicita una interrupcin. 2 El microprocesador emite un conocimiento de la interrupcin. 3 Se guarda el PC y el programa brinca a una localidad de la memoria que contiene una rutina para procesar la interrupcin. 4 El contenido de los registros internos (de trabajo y estatus) son guardados y la transferencia de datos es ejecutada bajo control de software. La ejecucin del programa es regresada a la secuencia preinterrumpida del programa. Hay dos mtodos de implementar la secuencia antes mencionada. a Interrupciones sondeados (polling) b Interrupciones vectorizadas El siguiente diagrama muestra la forma de dar servicio a una interrupcin.

Pgina 131

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.2.27. Interrupciones. El microprocesador Z80 posee un complejo y poderoso sistema de interrupciones, las cuales le sirven para comunicarse con perifricos externos, que pueden ser o no compatibles con el microprocesador Z80. El microprocesador cuenta con dos entradas para interrupciones externas ; la terminal INT (pin 16) y la NMI (pin 17), de las cuales INT es activa a nivel bajo y NMI en la transicin de 1 a 0. Las lneas de interrupcin del microprocesador (INT, NMI) permiten a un dispositivo externo interrumpir el flujo de un programa en el microprocesador, forzando el programa a pasar una localidad especifica de memoria. Una interrupcin es un evento asncrono ya que puede ocurrir en cualquier momento, y por lo general suspender la ejecucin del programa en curso. Hay tres mecanismos de interrupcin en el Z80. 1 La solicitud de los buses BUSREQ 2 Interrupcin no enmascarable NMI 3 Interrupcin usual. Las interrupciones pueden ser enmascarables y no enmascarables. Una interrupcin enmascarable tiene la caracterstica que si el microprocesador ejecuta una instruccin de deshabilitar interrupcin,(DI), cualquier seal de control en la lnea de interrupcin ser ignorado o enmascarada (masked out). El procesador se mantendr sin hacer caso a la lnea de la interrupcin enmascarable (EI) sea ejecutada.
Pgina 132

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Una interrupcin no enmascarable, por otro lado no puede ser enmascarable bajo control de programa. Se dice tambin que hay interrupciones vectorizadas o interrupciones de localidad fija. Una interrupcin de localidad fija, siempre har que el programa brinque a una localidad de memoria especfica, invariable. Las interrupciones vectorizadas, puede hacer que el procesador brinque a cualquier nmero de diferentes localidades dependiendo de la seal en un puerto de interrupcin que es interrogado por el procesador siguiendo una interrupcin. La interrupcin no enmascarable del Z80 NMI no puede ser vectorizada. Un NMI hace al procesador brincar a la localidad 0066h en la memoria donde debe empezar la rutina de servicio de la interrupcin. La rutina de servicio de la interrupcin termina con una instruccin de return, el cual fuerza al microprocesador a regresar exactamente donde estaba el programa principal en el momento de la interrupcin.

2.4.1 Enmascarable Las interrupciones ordinarias INT tambin pueden ser enmascaradas selectivamente por el programador. Haciendo uso de los flip flops IFF1 y IFF2 a 1 las interrupciones son autorizadas. Ponindolas a cero (mascarndolos) se prevendr la deteccin de INT. La instruccin EI es usada para habilitarlas y DI para deshabilitarlas. IFF1 y IFF no son puestos en 1 simultneamente durante la ejecucin de las instrucciones EI y DI, las interrupciones son deshabilitadas para prevenir cualquier prdida de informacin. Para que el microprocesador acepte esta interrupcin, deben de cumplirse las siguientes condiciones : 1 Que las interrupciones hayan sido habilitadas previamente. 2 Que la entrada Busreq no est activa. 3 Que la entrada NMI no est activa. En la operacin normal del Z80 examina la entrada INT en la subida de reloj en el ltimo estado del ltimo ciclo de mquina de cada instruccin y despus en cada transferencia o comparacin de bloques o entrada y salida de bloques. Cuando la entrada est en 0 lgico y se cumplen todas las condiciones, el microprocesador inicia un ciclo especial de respuesta a la interrupcin (interrupt acknowledge) para avisar al dispositivo que su interrupcin fue aceptada. Durante este ciclo de mquina se activa la seal M1, pero para distinguirlo de un ciclo normal de lectura de cdigo de operacin, la seal
Pgina 133

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

IOREQ se activa en lugar de la seal Mreq y la seal RD permanece inactiva. IOREQ se utiliza para indicar al dispositivo que puede colocar una palabra de 8 bits en el bus de datos. Este byte le proporciona al microprocesador informacin de la direccin en que se encuentra la subrutina de servicio a donde se transferir el control. Esta informacin vara dependiendo de la interrupcin. Adems, durante la interrupcin el contenido del PC no se altera y permanece con el ltimo valor que tena antes de la interrupcin. El Z-80 puede responder a 3 formas de interrupciones enmascarables, dependiendo de cual de los modos de interrupcin ha sido seleccionado por el programa del microprocesador. MODO 0 : En este modo el dispositivo que provoca la interrupcin coloca una palabra de 8 bits en bus de datos en lugar de que lo haga la memoria. Esa instruccin es leda por el Z-80 en el ciclo de respuesta a una interrupcin y ejecutada inmediatamente despus. Normalmente se emplea una instruccin RST n (restart) con lo cual se genera una llamada a subrutina que transfiere el control del programa a una de las 8 direcciones posibles colocadas en los primeros bytes de memoria. Las 8 posibilidades de RST son : Cdigo (bits 5, 4, 3) 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 Direccin 00h 08h 10h 18h 20h 28h 30h 38h Fig.2.28.

MODO 1 : Es un modo de interrupcin no vectorizada. Una interrupcin en la lnea INT en este modo, har brincar a el procesador a una localidad fija ; la 0038h. MODO 2 : Es un modo de interrupcin vectorizada que se habilita con la instruccin IM2. En este modo, la direccin de la rutina de servicio de interrupcin es almacenado en dos bytes del espacio de memoria.
Pgina 134

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El vector de interrupcin es una direccin proporcionada por el dispositivo perifrico que gener la interrupcin y es usado como un apuntador a la direccin de inicio de la subrutina de servicio de interrupcin. Cada perifrico proporciona 7 bits de la direccin el cual es agregado a la direccin de 8 bits que se encuentra en el registro I. El bit menos significativo del vector de interrupcin debe ser cero. El PC se carga automticamente al STACK ya que el PC es recargado con el contenido de la entrada de la tabla de interrupciones correspondiente al vector proporcionado por el dispositivo.

Fig.2.29. 2.4.1 No-enmascarable. Una interrupcin no enmascarable (o NMI) es un tipo especial de interrupcin usada en la mayora de los microordenadores como el IBM PC y el Apple II. Una interrupcin no enmascarable causa que la CPU deje lo que est haciendo, cambie el puntero de instruccin para que apunte a una direccin particular y contine ejecutando el cdigo de esa direccin. Se diferencia de los
Pgina 135

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

otros tipos de interrupcin en que los programadores no pueden hacer que la CPU las ignore, aunque algunos ordenadores pueden por medios externos bloquear esa seal, dando un efecto similar al resto de las interrupciones. Usos Al no poderse desactivar son empleadas por dispositivos para los que el tiempo de respuesta es crtico, como por ejemplo el coprocesador matemtico Intel 8087 en el IBM PC, el indicador de batera baja, o un error de paridad que ocurra en la memoria. En algunos ordenadores Clnicos las interrupciones no emascarables se usaban para manejar las diferencias entre su hardware y el original de IBM. As, si se intentaba acceder a uno de estos dispositivos se lanzaba una NMI y el BIOS ejecutaba el cdigo para el hardware presente en esa mquina. Tambin se podan lanzar NMI por el usuario, permitiendo interrumpir el programa actual para permitir la depuracin. En este caso al lanzarse una NMI se suspenda la ejecucin del programa actual y el control se transfera a un depurador para que el programador pudiera inspeccionar el estado de la memoria, los registros, etc. Estas NMI eran lanzadas de diferentes maneras, como pulsando un botn, por medio de una combinacin de teclas o por medio de un programa. En juegos, se produca una NMI y se interrumpa el juego, de esta manera se podan conseguir vidas extras por ejemplo modificando el rea de memoria donde se guardaban las vidas restantes. Este tipo de interrupciones no puede ser inhibida por el programador. Es por esto que se dice que es no enmascarable. Siempre ser aceptada por el Z80 hasta que finalice la instruccin en curso, asumiendo que no se ha recibido una requisicin de buses (BUSREQ). Si un NMI se recibe durante un BUSREQ se har 1 el flip flop interno NMI, y ser procesador al finalizar el BUSREQ. El NMI producir una colocacin push automtica del contador del programa en el STACK, y brinca a la direccin 0066h : Los dos bytes que representan la direccin 0066h ser instalado en el contador de programa. Estos representan la direccin de inicio de la rutina de manejo para el NMI. Este mecanismo fue diseado as por rapidez, ya que es usado en casos de emergencia. Por esto, no ofrece la flexibilidad del modo de interrupcin enmascarable. Ntese tambin que la rutina de interrupcin debe haber sido cargada con anterioridad de usar el NMI en la direccin 0066h. La secuencia de eventos es la siguiente : PC STACK IFF1 IFF2 0 IFF1
Pgina 136

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

BRINCA A 0066H

Fig.2.30. Ntese que el estado del flip flop de interrupcin enmascarable es pasado automticamente al flip flop al flip flop de interrupcin #2 IFF2. Luego IFF1 se hace cero para evitar cualquier interrupcin posterior. Este comportamiento es importante para evitar que se pierdan interrupciones dems baja prioridad (INT) y simplifica el hardware externo : El estado de la interrupcin pendiente INT es conservado internamente por el Z80. La interrupcin NMI es normalmente usado para eventos de alta prioridad tal como reloj de tiempo real o una falla de energa. El regreso de una interrupcin NMI es realizado por la instruccin especial ; RETN : return from no maskable interrupt. El contenido de IFF1 es regresado de IFF2 y el contenido de el PC es recargado con la localidad en el STACK. Ya que IFF1 ha sido reseteado durante la ejecucin del NMI, no se pudo aceptar ningn INT durante el NMI. No hay prdida de informacin. Despus de que el manejador de interrupcin termina, la secuencia es : IFF2 IFF1 STACK PC

Pgina 137

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

LA SOLICITUD DE BUSES (BUSREQ) Es la interrupcin de ms alta prioridad en el Z80 como regla general el Z80 no sensar a ninguna interrupcin hasta que sea completado el ltimo ciclo de mquina de la instruccin en curso. Las interrupciones NMI Y INT no sern tomadas en cuenta hasta que la instruccin en curso sea terminada. Si se ha terminado una instruccin y si el hecho de que alguna interrupcin NMI o INT estuviera pendiente o no estara memorizando internamente en el Z80 por flip-flops especializados. El flip flop NMI y el flip flop INT. Si un DMA (debido a BUSREQ) est presente en el sistema el programador debe entender que el DMA puede retrasar la respuesta al NMI o al INT.

2.5 Acceso Directo a memoria El acceso directo a memoria (DMA, del ingls Direct Memory Access) permite a cierto tipo de componentes de ordenador acceder a la memoria del sistema para leer o escribir independientemente de la CPU principal. Muchos sistemas hardware utilizan DMA, incluyendo controladores de unidades de disco, tarjetas grficas y tarjetas de sonido. DMA es una caracterstica esencial en todos los ordenadores modernos, ya que permite a dispositivos de diferentes velocidades comunicarse sin someter a la CPU a una carga masiva de interrupciones. es una caracterstica de moderno computadoras eso permite que ciertos subsistemas del hardware dentro de la computadora tengan acceso al sistema memoria para la lectura y/o la escritura independientemente del unidad central de proceso. Acceso directo de memoria del uso de muchos sistemas del hardware incluyendo accionamiento de disco reguladores, tarjetas de los grficos, tarjetas de la red, y tarjetas de los sonidos. Las computadoras que tienen canales de acceso directo de memoria pueden transferir datos a y desde los dispositivos con mucho menos CPU de arriba que las computadoras sin un canal de acceso directo de memoria. Sin el acceso directo de memoria, usando entrada-salida programada El modo (PIO), la CPU se ocupa tpicamente completamente para la duracin entera de la haber ledo o escribe la operacin y es as inasequible realizar el otro trabajo. Con el acceso directo de memoria, la CPU iniciara la transferencia, hace otras operaciones mientras que la transferencia est en marcha, y recibira una
Pgina 138

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

interrupcin del controlador dma una vez que se haya hecho la operacin. Esto es especialmente til adentro el computar en tiempo real usos donde est crtico el atasco detrs de operaciones concurrentes Principio El acceso directo de memoria es una caracterstica esencial de todas las computadoras modernas, pues permite que los dispositivos transfieran datos sin sujetar la CPU a gastos indirectos pesados. Si no, la CPU tendra que copiar cada pedazo de datos de la fuente a la destinacin. Esto es tpicamente ms lento que bloques normales de copiado de la memoria puesto que el acceso a los dispositivos de entrada-salida sobre un autobs perifrico es generalmente ms lento del ESPOLN normal del sistema. Durante este tiempo la CPU sera inasequible para cualquier otra tarea que implica el acceso del autobs de la CPU, aunque podra continuar haciendo cualquier trabajo que no requiriera el acceso del autobs. Una transferencia del acceso directo de memoria esencialmente copia un bloque de la memoria a partir de un dispositivo a otro. Mientras que la CPU inicia la transferencia, no la ejecuta. Para el acceso directo de memoria supuesto de los terceros, como se utiliza normalmente con ISA el autobs, la transferencia es realizado por un controlador dma que sea tpicamente parte del chipset de la placa base. Diseos ms avanzados del autobs por ejemplo PCI tpicamente uso el dominar del autobs Acceso directo de memoria, donde el dispositivo toma el control del autobs y realiza la transferencia s mismo. Un uso tpico del acceso directo de memoria est copiando un bloque de la memoria del ESPOLN del sistema a o desde un almacenador intermediario en el dispositivo. Tal operacin no parada el procesador, que consecuentemente se puede programar realizar otras tareas. El acceso directo de memoria es esencial para el alto rendimiento sistemas encajados. Es tambin esencial en el abastecimiento supuesto cero-copia puestas en prctica del perifrico drivers de dispositivo as como funcionalidades tales como encaminamiento del paquete de la red, aparato de lectura audio y vdeo que fluye. Cabe destacar que aunque no se necesite a la CPU para la transaccin de datos, s que se necesita el bus del sistema (tanto bus de datos como bus de

Pgina 139

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

direcciones), por lo que existen diferentes estrategias para regular su uso, permitiendo as que no quede totalmente acaparado por el controlador DMA. Estratejias de transferencia por AMD. A continuacin se exponen diferentes tcnicas para realizar la transferencia de datos. El uso de cada una de ellas depender de las caractersticas que se deseen primar en un sistema. DMA por robo de ciclo: se basa en usar uno o ms ciclos de CPU por cada instruccin que se ejecuta (de ah el nombre). De esta forma se consigue una alta disponibilidad del bus del sistema para la CPU, aunque, en consecuencia, la transferencia de los datos ser considerablemente lenta. Este mtodo es el que se usa habitualmente ya que la interferencia con la CPU es muy baja. DMA por rfagas: consiste en enviar el bloque de datos solicitado mediante una rfaga, ocupando el bus del sistema hasta finalizar la transmisin. As se consigue la mxima velocidad, sin embargo la CPU no podr usar el bus durante todo ese tiempo, por lo que permanecera inactiva. DMA transparente: se trata de usar el bus del sistema cuando se tiene certeza de que la CPU no lo necesita, como por ejemplo en aquellas fases del proceso de ejecucin de las instrucciones donde nunca se usa ya que la CPU realiza tareas internas (v. g. fase de decodificacin de la instruccin). De esta manera, como su nombre indica, la DMA permanecer transparente para la CPU y la transferencia se har sin obstaculizar la relacin CPU-bus del sistema. Como desventaja, la velocidad de transferencia es la ms baja posible. DMA Scatter-gather: permite la transferencia de datos a varias reas de memoria en una transaccin DMA simple. Es equivalente al encadenamiento de mltiples peticiones DMA simples. De nuevo, el objetivo es liberar a la CPU de las tareas de copia de datos e interrupciones de entrada/salida mltiples. Cach Problema de Coherencia [editar] La DMA puede llevar a problemas de coherencia de cach. Imagine una CPU equipada con una memoria cach y una memoria externa que se pueda acceder directamente por los dispositivos que utilizan DMA. Cuando la CPU accede a X lugar en la memoria, el valor actual se almacena en la cach. Si se realizan operaciones posteriores en X, se actualizar la copia en cach de X, pero no la versin de memoria externa de X. Si la cach no se vaca en la memoria antes de que otro dispositivo intente acceder a X, el dispositivo recibir un valor caducado de X.

Pgina 140

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Del mismo modo, si la copia en cach de X no es invlida cuando un dispositivo escribe un nuevo valor en la memoria, entonces la CPU funcionar con un valor caducado de X. Este problema puede ser abordado en una de las dos formas en el diseo del sistema: Los sistemas de cach coherente implementan un mtodo en el hardware externo mediante el cual se escribe una seal en el controlador de cach, la cual realiza una invalidacin de la cach para escritura de DMA o cach de descarga para lectura de DMA. Los sistemas no-coherente dejan este software, donde el sistema operativo debe asegurarse de que las lneas de cach se vacan antes de que una transferencia de salida de DMA sea iniciada y anulada antes de que una parte de la memoria sea afectada por una transferencia entrante de DMA que se haya requierido. El sistema operativo debe asegurarse de que esa parte de memoria no es accedida por cualquier subproceso que se ejecute en ese instante. Este ltimo enfoque introduce cierta sobrecarga a la operacin de DMA, ya que la mayora de hardware requiere un bucle para invalidar cada lnea de cach de forma individual. Los hbridos tambin existen, donde en la cach secundaria L2 es coherente, mientras que en la cach L1 (generalmente la CPU) es gestionado por el software. Secuencia de eventos [editar] Una operacin de E/S por DMA se establece ejecutando una corta rutina de inicializacin. Consiste en varias instrucciones de salida para asignar valores iniciales a: - AR: Direccion de memoria de la regin de datos de E/S IOBUF (buffer de entrada/salida). - WC: Nmero N de palabras de datos a transferir. Una vez inicializado, el DMA procede a transferir datos entre IOBUF y el dispositivo de E/S. Se realiza una transferencia cuando el dispositivo de E/S solicite una operacin de DMA a travs de la lnea de peticin del DMAC. Despus de cada transferencia, se decrementa el valor de WC y se incrementa el de AR.

Pgina 141

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La operacin termina cuando WC=0, entonces el DMAC (o el perifrico) indica la conclusin de la operacin enviando al procesador una peticin de interrupcin. Secuencia de eventos detallada [editar] 1- El procesador inicializa el DMAC programando AR y WC. 2- El dispositivo de E/S realiza una peticin de DMA al DMAC. 3- El DMAC le responde con una seal de aceptacin. 4- El DMAC activa la lnea de peticin de DMA al procesador. 5- Al final del ciclo del bus en curso, el procesador pone las lneas del bus del sistema en alta impedancia y activa la cesin de DMA. 6. El DMAC asume el control del bus. 7. El dispositivo de E/S transmite una nueva palabra de datos al registro intermedio de datos del DMAC. 8. El DMAC ejecuta un ciclo de escritura en memoria para transferir el contenido del registro intermedio a la posicin M[AR]. 9. El DMAC decrementa WC e incrementa AR. 10.El DMAC libera el bus y desactiva la lnea de peticin de DMA. 11.El DMAC compara WC con 0:

Si WC > 0, se repite desde el paso 2.<br> Si WC = 0, el DMAC se detiene y enva una peticin de interrupcin al procesador.<br>

Pgina 142

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

2.5.1 Sistema de video El subsistema de vdeo (VIO) es el encargado de gestionar la comunicacin entre los programas y la pantalla. Es, sin duda, el subsistema ms complejo de los tres, y el que ofrece, por tanto, mayores posibilidades. Dado que puede haber varios programas ejecutandose a la vez en el sistema, pero solo uno puede acceder a la vez a la pantalla (normalmente el programa que se encuentra en primer plano o foreground), es necesario virtualizar sta por medio de un buffer de pantalla propio de cada programa: el LVB (Logic Video Buffer, buffer de vdeo virtual). Cuando una aplicacin quiere escribir en pantalla y se encuentra en segundo plano (background), su salida se escribe en dicho LVB. En el momento en que el usuario conmuta dicho programa a primer plano, el LVB se copia tal cual en la memoria de pantalla, y el resto de las escrituras van a sta directamente. Si se vuelve a conmutar dicho programa a segundo plano, OS/2 copia lo que hubiese en pantalla en ese momento al LVB. De este modo, el programa nunca sabe ni le preocupa cuando est en primer o en segundo plano.

FUNCIONES VIO Salida por TTY virtual


En un extremo se encuentra el primer servicio que ofrece el subsistema VIO, que es el de salida TTY. Este servicio es casi idntico a la salida de caracteres por medio del sistema de archivos. De hecho, ste, cuando comprueba que lo que el programa enva va dirigido a la pantalla, usa este servicio para realizar la funcin. Cual es la diferencia entre uno y otro, entonces? Las diferencias son dos: la primera es que el uso del subsistema VIO es una opcin ms rpida que el sistema de ficheros; la segunda es que si usamos el subsistema, no podremos redireccionar la salida a un fichero, o a otro dispositivo de salida. Siempre ir a la pantalla. El servicio TTY admite los caracteres de control estandar del ASCII, y tambin puede soportar ANSI, si ste es activado mediante la llamada correspondiente.

Pgina 143

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

VioWrtTTY VioGetAnsi VioSetAnsi VioGetMode VioSetMode VioGetState VioSetState Salida de cadenas de caracteres
Los siguientes servicios se encargan del tratamiento de la pantalla a ms bajo nivel. Con ellos podemos imprimir largas cadenas de caracteres con atributos y leer los caracteres que hay en determinadas posiciones de la pantalla. Tambin podemos repetir un caracter o una pareja caracter-atributo un nmero determinado de veces. Los atributos son bytes que definen el color de tinta y de fondo para cada caracter, as como otras caractersticas como el parpadeo. Estn compuestos por un byte, el cual se divide en dos nibbles (grupos de 4 bits). El nibble de menor peso determina el color de la tinta del caracter, y el de mayor peso el color de fondo y, segn se encuentre activo o no, el parpadeo del caracter. La distribucin es como sigue: Parpadeo activado Bit Significado 7 6 5 4 3 2 1 0 Intensidad activada Bit Significado Intensidad del fondo Rojo del fondo Verde del fondo Azul del fondo Intensidad de la tinta Rojo de la tinta Verde de la tinta Azul de la tinta

Parpadeo del caracter 7 Rojo del fondo Verde del fondo Azul del fondo Intensidad de la tinta Rojo de la tinta Verde de la tinta Azul de la tinta 6 5 4 3 2 1 0

Fig. 2.31.

Pgina 144

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Los bits de color activan directamente cada una de las componentes del monitor, de modo que stas se suman directamente, dando lugar a los siguientes colores: 0 Negro 1 Azul 4 Rojo 2 Verde 3 Celeste

5 Magenta 6 Amarillo 7 Blanco Fig. 2.32.

El bit de intensidad se limita a hacer estos colores ms o menos brillantes. Estos servicios orientados a caracter siguen siendo independientes del hardware utilizado de modo que no es necesario saber como se trabaja a nivel fsico con ellos. Por otra parte, el propio OS/2 optimiza las transferencias para cada uno de ellos, de modo que se consigue la mayor velocidad posible, y se eliminan ciertos problemas inherentes a algunos sistemas grficos (por ejemplo, en las tarjetas CGA sincroniza automticamente la escritura con el retrazado vertical, de modo que se evita la aparicin de nieve en la pantalla). Tanto cuando hacemos una lectura como una escritura, si excedemos el fin de una lnea se seguir leyendo en la siguiente, y si llegamos al final de la pantalla no se seguir leyendo ni imprimiendo.

VioWrtCellStr VioWrtCharStr VioWrtCharStrAtt VioWrtNAttr VioWrtNCell VioWrtNChar VioReadCellStr VioReadCharStr Funciones de Scroll
El subsistema VIO ofrece, adems, la posibilidad de realizar scroll de ventanas en modo texto. Con este conjunto de funciones, podemos desplazar parte o toda la pantalla en cualquiera de las cuatro direcciones posibles. La razn de incluirlas es que resulta mucho ms rpido que hacer una rutina que lea cada posicin del buffer de video y la reescriba en el lugar adecuado, aparte de que se trata de una funcin muy comn en casi cualquier programa.

Pgina 145

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

VioScrollDn VioScrollLf VioScrollRt VioScrollUp Definicin y movimiento del cursor


El cursor (el cuadradito parpadeante) es totalmente definible por el usuario en las sesiones de texto y grficos de OS/2. Podemos definir tanto su tamao como su posicin dentro del caracter. Al contrario que en MS-DOS, cuando escribimos en la pantalla de OS/2 la posicin del cursor no se cambia. Esto se hace as para ganar tiempo. Normalmente el cursor solo se usa cuando hay que introducir datos por teclado, y el resto de las veces se suele hacer desaparecer de la pantalla. Esta es la razn de que halla un conjunto de funciones para situar el cursor. De esta manera se gana en velocidad.

VioGetCurPos VioSetCurPos VioGetCurType VioSetCurType Acceso al LVB


Cuando se necesite alta velocidad, se puede pedir acceso directo al buffer virtual de video asociado con la aplicacin. Al hacerlo, OS/2 devuelve un puntero a la zona de memoria en donde est situado, con lo que podremos escribir en l como si se tratase de la pantalla fsica. Una vez que hemos terminado, debemos enviar una orden de retrazado, que har que OS/2 copie el LVB a la pantalla fsica (siempre que la aplicacin se encuentre en primer plano). Esto significa que los cambios que hagamos en el LVB no son visibles hasta que nosotros queramos. Usar esta opcin implica que perdemos el aislamiento entre el hardware y nosotros: dado que el LVB no es ms que una copia del buffer real de pantalla, es necesario que nuestro programa conozca la geometra y la forma de almacenamiento de los datos en sta.

Pgina 146

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

VioGetBuf VioShowBuf Acceso directo al buffer real de video


En el extremo opuesto se encuentran las funciones de acceso directo al video. Con ellas, OS/2 da acceso directo a la memoria de pantalla. Sin embargo, esto que en el DOS de siempre es la opcin ms normal y comn, puede resultar catastrfico en un Sistema Operativo multitarea como OS/2; no se hundira el suelo bajo nuestros pies, pero la pantalla podra ser alterada en un momento poco oportuno... si OS/2 no tomase las debidas precauciones. Para que un programa pueda acceder directamente a la memoria real de video, es absolutamente necesario que se encuentre en primer plano. Esto es as porque si escribiese algo en pantalla cuando estuviese en background, machacara la imagen de la aplicacin que se encontrase en ese momento en primer plano. Lo primero que hay que hacer es pedir la direccin fsica de la memoria de vdeo. OS/2 devuelve un selector (o varios) a dicha zona de memoria (ver modos de direccionamiento del 286). Estos selectores deben ser convertidos a punteros antes de poder trabajar con ellos. Pueden ser varios pues cada selector no puede apuntar a un bloque de memoria mayor de 64Ks, el cual es tambin, casualmente, el tamao de cada bloque de memoria de las tarjetas de vdeo actuales. Esto ayuda a simplificar el acceso, pues en modos como 640x480x16colores no necesitaremos cambiar de bancos; OS/2 nos devuelve un selector que apunta a cada uno de ellos, con lo que solo tenemos que acceder normalmente como si fuese memoria lineal, y el Sistema Operativo conmutar de uno a otro automticamente. El hecho de obtener un selector no significa que dispongamos de acceso todava a la pantalla. De hecho, si intentsemos escribir o leer algo en ese momento y la aplicacin no se encontrase en primer plano, OS/2 la cerrara inmediatamente, dando un Fallo de Proteccin General (el cual ya sabemos que no es tan fatal como el de Windows, pues en OS/2 solo afecta a la aplicacin que lo ha provocado, dejando intacto al Sistema Operativo y al resto de los programas). Cada vez que queramos acceder a la memoria fsica de video, debemos bloquear el acceso al buffer. Si el programa estaba en primer plano, OS/2 devolver un valor afirmativo al retornar de la llamada, y bloquear el selector de programas. Esto significa que el usuario no podr conmutar la sesin actual a segundo plano hasta que sta termine el acceso. Sin embargo, el resto de las aplicaciones siguen funcionando en segundo plano, sin verse afectadas por este hecho. Por supuesto, esto puede ser peligroso, y OS/2 toma algunas precauciones: si el sistema est bloqueado y el usuario hace una conmutacin de tarea, si el programa no desbloquea el conmutador antes de un cierto tiempo definido por el sistema, queda congelado y se realiza la conmutacin.
Pgina 147

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Por eso es recomendable desbloquear cada x tiempo el selector de programas y volverlo a bloquear. Si por el contrario el programa se encontraba en segundo plano, hay dos opciones: OS/2 puede retornar un cdigo de error al programa, con lo que este sabr que no tiene acceso al buffer y puede seguir trabajando en otra cosa, o bien OS/2 congelar al programa hasta que el usuario lo pase a primer plano, momento en que lo despertar indicandole que tiene acceso al buffer real. Una vez que OS/2 ha devuelto un resultado afirmativo, el programa tiene acceso total a la memoria de video. Cuando haya terminado, tiene que proceder a desbloquear la pantalla, de modo que OS/2 pueda desbloquear el selector de programas y devolver el sistema a la normalidad.

VioGetPhysBuf VioScrLock VioScrUnLock


Existe una dificultad adicional a la hora de trabajar con acceso directo a la pantalla. Se trata de que OS/2, al conmutar de una tarea a otra, solo guarda el contenido de la pantalla si sta se encontraba en modo texto (esto se cumple para OS/2 1.x. En Warp 4, sin embargo, SI conserva el contenido de la pantalla, pero no se si se cumple tambin para OS/2 2.x o 3.x). Si estabamos trabajando en modo grfico, el contenido se perder. Para evitarlo, OS/2 facilita la posibilidad de crear un thread (este concepto ser explicado ms adelante, cuando veamos la multitarea a fondo) que ser activado cuando el programa vaya a cambiar de primer a segundo plano, y viceversa. Esto es as para permitir que un programa pueda almacenar el contenido de la pantalla en modo grfico cuando no tiene bloqueado el acceso a la memoria de video. Es el thread SavRedrawWait. Para implementarlo, es necesario crear un nuevo thread en el que se ejecute la llamada VioSavRedrawWait. Esta llamada bloquear el thread hasta que el usuario pulse CTRL+ESC, momento en que OS/2, antes de conmutar de tarea, despertar a dicho thread indicndole que debe almacenar el contenido de la pantalla. Cuando el thread termine, debe volver a ejecutar la llamada, con lo que OS/2 sabr que ha finalizado. El thread se quedar dormido de nuevo, y solo ser despertado cuando el usuario vuelva a conmutar a primer plano el programa. Entonces OS/2 le indicar que debe repintar la pantalla.

VioSavRedrawWait
La inclusin de este sistema de acceso puede parecer innecesaria, a la vista de la potencia del acceso al LVB; la razn de haberla implementado fue que, cuando sali OS/2, no llevaba todava el Presentation Manager, el gestor de ventanas, sino que era un Sistema Operativo en modo texto, por lo que se incluy este sistema para poder acceder en modo grfico a la pantalla, dado que VIO no ofrece ninguna facilidad como el trazado de puntos o lneas.
Pgina 148

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Actualmente, al disponer de un completo (y complejo) gestor de ventanas, este mtodo puede parecer inutil, sin embargo, para juegos puede ser muy til, pues permite acceder a pantalla completa en modos como 320x200 en 256 colores, lo que permite una alta velocidad de refresco, as como una gran facilidad de manejo. Hay que sealar que el acceso directo a la memoria de vdeo solo se puede hacer estando en una sesin de pantalla completa; no funcionar en una sesin de ventana

2.5.2 Sistema de discos DMA significa Acceso directo a memoria, esto quiere decir que cuando un dispositivo es DMA, tiene una transferencia de datos en forma directa con la memoria RAM, sin necesidad de pasar por el CPU, lo que ahorra tiempo y trabajo al CPU Existen bsicamente dos tipos de discos IDE y SCSI. Las controladoras IDE son las que normalmente encontramos integradas en la placa madre y son las de uso ms normal en los ambientes domsticos. Las controladoras SCSI, son controladoras profesionales, orientadas normalmente al mbito profesional, y los discos y tecnologas SCSI son las punteras. Los discos salen en tecnologa SCSI y uno o dos aos ms tarde, se implementan en tecnologa IDE. Es decir, los SCSI llevan un par de aos de diferencia en avance tecnolgico siempre con respecto a los IDE. Discos IDE Discos IDE. Son los orientados normalmente al consumo domestico. Existen dos tcnicas de acceso a estos discos. Son los modos PIO y los modos DMA. Tcnicas de acceso I/O Modos PIO: En los discos antiguos, el acceso a disco se hacia mediante tcnicas PIO (Program Input/Output). Estos tipos de acceso, implican mucho trabajo a la CPU (constantemente interrogando a los puertos de comunicaciones con el disco), y poca velocidad
Pgina 149

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de transferencia, ya que lo mximo que poda traerse la CPU es de dos en dos bytes del disco por cada operacin PIO. Los modos PIO son de PIO 1 a PIO 4, siendo el ms rpido este ultimo. Tcnicas de acceso I/O Modos DMA. Evidentemente el modo anterior queda obsoleto desde el momento en que las tecnologas de las placas madre y de los buses de las placas madre, permiten la tcnica del bus mastering. Esta tcnica consiste en que el dispositivo puede tomar el control del bus desconectando del bus a la CPU y durante esa fraccin de tiempo hacer llegar datos a la memoria del ordenador de una manera masiva. En ese momento el procesador est inoperativo, pero la velocidad de transferencia conseguida por la electrnica del disco y de la controladora supera con creces la parada de la CPU. Dispositivos en modo DMA Dispositivos ATA/ATAPI Windows XP habilita por defecto el modo DMA en la mayora de los dispositivos ATA / ATAPI, pero para asegurar la estabilidad del sistema cuando encuentra un nmero grande de errores (ms de seis) durante la transferencia de datos, seleccionar el modo PIO. Dispositivos en modo DMA En dispositivos ATAPI, excepto DVD y CD-RW Windows XP habilita por defecto el modo PIO en CD-ROM y dispositivos removibles como los magnetopticos. Podemos habilitar el DMA a travs del administrador de dispositivos . Windows XP habilita por defecto el DMA en ATAPI DVD y CD-RW/CD-R. Deshabilitar modo DMA

Pgina 150

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Windows XP deshabilitar el modo DMA de un dispositivo si durante el proceso de transferencia de datos encuentra un nmero significativo de errores (mayor de 6) habilitando para el dispositivo en cuestin el modo PIO. En este caso no podremos habilitar de nuevo el modo DMA a travs del cambio de modo en el administrador de dispositivos, slo ser posible desinstalando y volviendo a instalar el dispositivo. Habilitar modo DMA 1. Abrimos el administrador de dispositivos 2. Doble clic sobre Controladoras IDE ATA/ATAPI para ver la lista de canales y controladoras. 3. Sobre el canal del dispositivo en cuestin: Botn derecho del ratn Propiedades - Configuracin avanzada. 4. Seleccionar en Modo de transferencia el modo DMA si est disponible.

Pgina 151

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig. 2.33.

2.5.3 Otras aplicaciones Modo de transferencia DMA 1. Transferencia single. En ella se transfieren los datos uno a uno. La CPU recupera el control entre cada transferencia. 2. Transferencia bloque. El controlador de DMA mantiene el control de los buses hasta que se finaliza la transferencia del bloque completo. 3. Transferencia demanda. Es la transferencia bajo control del perifrico. Se transfieren datos mientras la lnea DREQ se mantenga activa.

Pgina 152

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Cuando se desactiva la seal DREQ se detiene la transferencia. Los buses pertenecen al control mientras DREQ es activa.

Fig. 2.34. Modo cascada. 4. Modo cascada. Permite indefinidamente el control 8237 Lneas HOLD y HLDA conectadas a DREQ y DACK.

Pgina 153

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Conclusin Los componentes internos de la computara estas interconectados entre si a travs de componentes llamados buses, los cuales transfieren los datos de una unidad a otra, tambin existen diferentes tipos de accesos a memoria los

Pgina 154

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

cuales dependen de los instrumentos o mtodos que se utilicen, pero tambin participan de la comunicacin de las unidades que hacen funcionar una computadora. Cada pieza es esencial para el buen funcionamiento del equipo.

III. Seleccin De Componentes Para Ensamble De Equipos De Cmputo. 3.1 Chipset


Para hablar de chip-set primero debemos conocer el concepto de Circuito Integrado Auxiliar. Circuito integrado auxiliar se designa al circuito integrado que es perifrico a un sistema pero necesario para el funcionamiento del mismo. La mayora de los sistemas necesitan ms de un circuito integrado auxiliar; el conjunto de circuitos integrados auxiliares necesarios por un sistema para realizar una tarea suele ser conocido como chipset, cuya traduccin literal del ingls significa conjunto de circuitos integrados. El trmino chipset se suele emplear en la actualidad cuando se habla sobre las placas base de los IBM PCs. La configuracin habitual es usar dos circuitos integrados auxiliares al procesador principal, llamados puente norte (que se usa como puente de enlace entre dicho procesador y la memoria) y puente sur (encargado de comunicar el procesador con el resto de los perifricos). Este trmino fue usado frecuentemente en los aos 70 y 90 para designar los circuitos integrados encargados de las tareas grficas de los ordenadores domsticos de la poca: el Commodore Amiga y el Atari ST. Ambos ordenadores tenan un procesador principal, pero gran cantidad de sus funciones grficas y de sonido estaban incluidas en coprocesadores separados que funcionaban en paralelo al procesador principal.
Pgina 155

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Concepto de CHIP-SET El "chipset" es el conjunto (set) de chips que se encargan de controlar determinadas funciones del ordenador, como la forma en que interacciona el microprocesador con la memoria o la cach, o el control de los puertos y slots ISA, PCI, AGP, USB... Antiguamente estas funciones eran relativamente sencillas de realizar y el chipset apenas influa en el rendimiento del ordenador, por lo que el chipset era el ltimo elemento al que se conceda importancia a la hora de comprar una placa base, si es que alguien se molestaba siquiera en informarse sobre la naturaleza del mismo. Pero los nuevos y muy complejos micros, junto con un muy amplio abanico de tecnologas en materia de memorias, cach y perifricos que aparecen y desaparecen casi de mes en mes, han hecho que la importancia del chipset crezca enormemente. De la calidad y caractersticas del chipset dependern: Obtener o no el mximo rendimiento del microprocesador. Las posibilidades de actualizacin del ordenador. El uso de ciertas tecnologas ms avanzadas de memorias y perifricos.

Debe destacarse el hecho de que el uso de un buen chipset no implica que la placa base en conjunto sea de calidad. Como ejemplo, muchas placas con chipsets que daran soporte a enormes cantidades de memoria, 512 MB o ms, no incluyen zcalos de memoria para ms de 128 256. O bien el caso de los puertos USB, cuyo soporte est previsto en la casi totalidad de los chipsets de los ltimos dos aos pero que hasta fecha reciente no han tenido los conectores necesarios en las placas base.

3.1.1 CPU
La unidad central de procesamiento o CPU (por el acrnimo en ingls de central processing unit), o simplemente el procesador o microprocesador, es el componente en un ordenador, que interpreta las instrucciones y procesa los

Pgina 156

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

datos contenidos en los programas de la computadora. Las CPU proporcionan la caracterstica fundamental de la computadora digital (la programabilidad) y son uno de los componentes necesarios encontrados en las computadoras de cualquier tiempo, junto con el almacenamiento primario y los dispositivos de entrada/salida. Se conoce como microprocesador el CPU que es manufacturado con circuitos integrados. Desde mediados de los aos 1970, los microprocesadores de un solo chip han reemplazado casi totalmente todos los tipos de CPU, y hoy en da, el trmino "CPU" es aplicado usualmente a todos los microprocesadores. La expresin "unidad central de proceso" es, en trminos generales, una descripcin de una cierta clase de mquinas de lgica que pueden ejecutar complejos programas de computadora. Esta amplia definicin puede fcilmente ser aplicada a muchos de los primeros ordenadores que existieron mucho antes que el trmino "CPU" estuviera en amplio uso. Sin embargo, el trmino en s mismo y su acrnimo han estado en uso en la industria de la informtica por lo menos desde el principio de los aos 1960 . La forma, el diseo y la implementacin de las CPU ha cambiado drsticamente desde los primeros ejemplos, pero su operacin fundamental ha permanecido bastante similar. Las primeras CPU fueron diseadas a la medida como parte de una computadora ms grande, generalmente una computadora nica en su especie. Sin embargo, este costoso mtodo de disear los CPU a la medida, para una aplicacin particular, ha desaparecido en gran parte y se ha sustituido por el desarrollo de clases de procesadores baratos y estandarizados adaptados para uno o muchos propsitos. Esta tendencia de estandarizacin comenz generalmente en la era de los transistores discretos, computadoras centrales, y microcomputadoras, y fue acelerada rpidamente con la popularizacin del circuito integrado (IC), ste ha permitido que sean diseados y fabricados CPU ms complejos en espacios pequeos (en la orden de milmetros). Tanto la miniaturizacin como la estandarizacin de los CPU han aumentado la presencia de estos dispositivos digitales en la vida moderna
Pgina 157

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

mucho ms all de las aplicaciones limitadas de mquinas de computacin dedicadas. Los microprocesadores modernos aparecen en todo, desde automviles, televisores, neveras, calculadoras, aviones, hasta telfonos mviles o celulares, juguetes, entre otros. Operacin del CPU La operacin fundamental de la mayora de los CPU, es ejecutar una secuencia de instrucciones almacenadas llamadas "programa". El programa es representado por una serie de nmeros que se mantentienen en una cierta clase de memoria de computador. Hay cuatro pasos que casi todos los CPU de arquitectura de von Neumann usan en su operacin: fetch, decode, execute, y writeback, (leer, decodificar, ejecutar, y escribir). El primer paso, leer (fetch), implica el recuperar una instruccin, (que es representada por un nmero o una secuencia de nmeros), de la memoria de programa. La localizacin en la memoria del programa es determinada por un contador de programa (PC), que almacena un nmero que identifica la posicin actual en el programa. En otras palabras, el contador de programa indica al CPU, el lugar de la instruccin en el programa actual. Despus de que se lee una instruccin, el Contador de Programa es incrementado por la longitud de la palabra de instruccin en trminos de unidades de memoria.[2] Frecuentemente la instruccin a ser leda debe ser recuperada de memoria relativamente lenta, haciendo detener al CPU mientras espera que la instruccin sea retornada. Este problema es tratado en procesadores modernos en gran parte por los cachs y las arquitecturas pipeline. La instruccin que el CPU lee desde la memoria es usada para determinar qu deber hacer el CPU. En el paso de decodificacin, la instruccin es dividida en partes que tienen significado para otras unidades del CPU. La manera en que el valor de la instruccin numrica es interpretado est definida por la arquitectura del conjunto de instrucciones (el ISA) del CPU.[] A menudo, un grupo de nmeros en la instruccin, llamados opcode, indica qu operacin realizar. Las partes restantes del nmero usualmente proporcionan informacin
Pgina 158

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

requerida para esa instruccin, como por ejemplo, operandos para una operacin de adicin. Tales operandos se pueden dar como un valor constante (llamado valor inmediato), o como un lugar para localizar un valor, que segn lo determinado por algn modo de direccin, puede ser un registro o una direccin de memoria. En diseos ms viejos las unidades del CPU responsables de decodificar la instruccin eran dispositivos de hardware fijos. Sin embargo, en CPUs e ISAs ms abstractos y complicados, es frecuentemente usado un microprograma para ayudar a traducir instrucciones en varias seales de configuracin para el CPU. Este microprograma es a veces reescribible de tal manera que puede ser modificado para cambiar la manera en que el CPU decodifica instrucciones incluso despus de que haya sido fabricado.

Fig.3.1 Diagrama de bloques de un CPU simple

Despus de los pasos de lectura y decodificacin, es llevado a cabo el paso de la ejecucin de la instruccin. Durante este paso, varias unidades del CPU son conectadas de tal manera que ellas pueden realizar la operacin deseada. Si, por ejemplo, una operacin de adicin fue solicitada, una unidad aritmtico lgica (ALU) ser conectada a un conjunto de entradas y un conjunto de salidas. Las entradas proporcionan los nmeros a ser sumados, y las salidas
Pgina 159

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

contendrn la suma final. La ALU contiene la circuitera para realizar operaciones simples de aritmtica y lgica en las entradas, como adicin y operaciones de bits (bitwise). Si la operacin de adicin produce un resultado demasiado grande para poder ser manejado por el CPU, tambin puede ser ajustada una bandera (flag) de desbordamiento aritmtico localizada en un registro de banderas (ver abajo la seccin sobre rango de nmeros enteros). El paso final, la escritura (writeback), simplemente "escribe" los resultados del paso de ejecucin a una cierta forma de memoria. Muy a menudo, los resultados son escritos a algn registro interno del CPU para acceso rpido por subsecuentes instrucciones. En otros casos los resultados pueden ser escritos a una memoria principal ms lenta pero ms barata y ms grande. Algunos tipos de instrucciones manipulan el contador de programa en lugar de directamente producir datos de resultado. stas son llamadas generalmente "saltos" (jumps) y facilitan comportamientos como bucles (loops), la ejecucin condicional de programas (con el uso de saltos condicionales), y funciones en programas.[4] Muchas instrucciones tambin cambiarn el estado de dgitos en un registro de "banderas". Estas banderas pueden ser usadas para influenciar cmo se comporta un programa, puesto que a menudo indican el resultado de varias operaciones. Por ejemplo, un tipo de instruccin de "comparacin" considera dos valores y fija un nmero, en el registro de banderas, de acuerdo a cul es el mayor. Entonces, esta bandera puede ser usada por una posterior instruccin de salto para determinar el flujo de programa. Despus de la ejecucin de la instruccin y la escritura de los datos resultantes, el proceso entero se repite con el siguiente ciclo de instruccin, normalmente leyendo la siguiente instruccin en secuencia debido al valor incrementado en el contador de programa. Si la instruccin completada era un salto, el contador de programa ser modificado para contener la direccin de la instruccin a la cual se salt, y la ejecucin del programa contina normalmente. En CPUs ms complejos que el descrito aqu, mltiples instrucciones pueden ser ledas, decodificadas, y ejecutadas simultneamente.
Pgina 160

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Esta seccin describe lo que es referido generalmente como el "entubado RISC clsico" (Classic RISC pipeline), que de hecho es bastante comn entre los CPU simples usados en muchos dispositivos electrnicos, a menudo llamados microcontroladores. Diseo e implementacin Rango de enteros La manera en que una CPU representa los nmeros es una opcin de diseo que afecta las ms bsicas formas en que el dispositivo funciona. Algunas de las primeras calculadoras digitales usaron, para representar nmeros internamente, un modelo elctrico del sistema de numeracin decimal comn (base diez). Algunas otras computadoras han usado sistemas de numeracin ms exticos como el ternario (base tres). Casi todas las CPU modernas representan los nmeros en forma binaria, en donde cada dgito es representado por una cierta cantidad fsica de dos valores, como un voltaje "alto" o "bajo".[]

Fig.3.2 Microprocesador MOS 6502 en un dual in-line package (encapasulado

en doble lnea), un diseo extremadamente popular de 8 bits. Con la representacin numrica estn relacionados el tamao y la precisin de los nmeros que una CPU puede representar. En el caso de una CPU binaria, un bit se refiere a una posicin significativa en los nmeros con que trabaja una CPU. El nmero de bits (o de posiciones numricas, o dgitos) que una CPU usa para representar los nmeros, a menudo se llama "tamao de la palabra", "ancho de bits", "ancho de ruta de datos", o "precisin del nmero entero" cuando se ocupa estrictamente de nmeros enteros (en oposicin a nmeros de coma flotante). Este nmero difiere entre las arquitecturas, y a menudo
Pgina 161

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

dentro de diferentes unidades de la misma CPU. Por ejemplo, una CPU de 8 bits(vase Fig.3.2) maneja un rango de nmeros que pueden ser representados por ocho dgitos binarios, cada dgito teniendo dos valores posibles, y en combinacin los 8 bits teniendo 28 256 nmeros discretos. En efecto, el tamao del nmero entero fija un lmite de hardware en el rango de nmeros enteros que el software corre y que la CPU puede usar directamente.[7] El rango del nmero entero tambin puede afectar el nmero de posiciones en memoria que la CPU puede direccionar (localizar). Por ejemplo, si una CPU binaria utiliza 32 bits para representar una direccin de memoria, y cada direccin de memoria representa a un octeto (8 bits), la cantidad mxima de memoria que la CPU puede direccionar es 232 octetos, o 4 GB. sta es una vista muy simple del espacio de direccin de la CPU, y muchos diseos modernos usan mtodos de direccin mucho ms complejos como paginacin para localizar ms memoria que su rango entero permitira con un espacio de direccin plano. Niveles ms altos del rango de nmeros enteros requieren ms estructuras para manejar los dgitos adicionales, y por lo tanto, ms complejidad, tamao, uso de energa, y generalmente costo. Por ello, no es del todo infrecuente, ver microcontroladores de 4 y 8 bits usados en aplicaciones modernas, aun cuando estn disponibles CPU con un rango mucho ms alto (de 16, 32, 64, e incluso 128 bits). Los microcontroladores ms simples son generalmente ms baratos, usan menos energa, y por lo tanto disipan menos calor. Todo esto pueden ser consideraciones de diseo importantes para los dispositivos electrnicos. Sin embargo, en aplicaciones del extremo alto, los beneficios producidos por el rango adicional, (ms a menudo el espacio de direccin adicional), son ms significativos y con frecuencia afectan las opciones del diseo. Para ganar algunas de las ventajas proporcionadas por las longitudes de bits tanto ms bajas, como ms altas, muchas CPUs estn diseadas con anchos de bit diferentes para diferentes unidades del dispositivo. Por ejemplo, el IBM Sistem/370 us una CPU que fue sobre todo de 32 bits, pero us precisin de
Pgina 162

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

128 bits dentro de sus unidades de coma flotante para facilitar mayor exactitud y rango de nmeros de coma flotante . Muchos diseos posteriores de CPU usan una mezcla de ancho de bits similar, especialmente cuando el procesador est diseado para usos de propsito general donde se requiere un razonable equilibrio entre la capacidad de nmeros enteros y de coma flotante. Frecuencia de reloj La mayora de las CPU, y de hecho, la mayora de los dispositivos de lgica secuencial, son de naturaleza sncrona.[8] Es decir, estn diseados y operan en funcin de una seal de sincronizacin. Esta seal, conocida como seal de reloj, usualmente toma la forma de una onda cuadrada peridica. Calculando el tiempo mximo en que las seales elctricas pueden moverse en las varias bifurcaciones de los muchos circuitos de una CPU, los diseadores pueden seleccionar un perodo apropiado para la seal del reloj. Este perodo debe ser ms largo que la cantidad de tiempo que toma a una seal moverse, o propagarse, en el peor de los casos. Al fijar el perodo del reloj a un valor bastante mayor sobre el retardo de la propagacin del peor caso, es posible disear toda la CPU y la manera que mueve los datos alrededor de los "bordes" de la subida y bajada de la seal del reloj. Esto tiene la ventaja de simplificar la CPU significativamente, tanto en una perspectiva de diseo, como en una perspectiva de cantidad de componentes. Sin embargo, esto tambin tiene la desventaja que toda la CPU debe esperar por sus elementos ms lentos, aun cuando algunas unidades de la misma son mucho ms rpidas. Esta limitacin ha sido compensada en gran parte por varios mtodos de aumentar el paralelismo de la CPU (ver abajo). Sin embargo, las solamente mejoras arquitectnicas no solucionan todas las desventajas de CPUs globalmente sncronas. Por ejemplo, una seal de reloj est sujeta a los retardos de cualquier otra seal elctrica. Velocidades de reloj ms altas en CPUs cada vez ms complejas hacen ms difcil de mantener la seal del reloj en fase (sincronizada) a travs de toda la unidad. Esto ha conducido que muchas CPU modernas requieran que se les proporcione
Pgina 163

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

mltiples seales de reloj idnticas, para evitar retardar una sola seal lo suficiente significativamente como para hacer a la CPU funcionar incorrectamente. Otro importante problema cuando la velocidad del reloj aumenta dramticamente, es la cantidad de calor que es disipado por la CPU. La seal del reloj cambia constantemente, provocando la conmutacin de muchos componentes (cambio de estado) sin importar si estn siendo usados en ese momento. En general, un componente que est cambiando de estado, usa ms energa que un elemento en un estado esttico. Por lo tanto, a medida que la velocidad del reloj aumenta, as lo hace tambin la disipacin de calor, causando que la CPU requiera soluciones de enfriamiento ms efectivas. Un mtodo de tratar la conmutacin de componentes innecesarios se llama el clock gating, que implica apagar la seal del reloj a los componentes innecesarios, efectivamente desactivndolos. Sin embargo, esto es frecuentemente considerado como difcil de implementar y por lo tanto no ve uso comn afuera de diseos de muy baja potencia.[9] Otro mtodo de tratar algunos de los problemas de una seal global de reloj es la completa remocin de la misma. Mientras que quitar la seal global del reloj hace, de muchas maneras, considerablemente ms complejo el proceso del diseo, en comparacin con diseos sncronos similares, los diseos asincrnicos (o sin reloj) tienen marcadas ventajas en el consumo de energa y la disipacin de calor. Aunque algo infrecuente, CPUs completas se han construido sin utilizar una seal global de reloj. Dos notables ejemplos de esto son el AMULET, que implementa la arquitectura del ARM, y el MiniMIPS, compatible con el MIPS R3000. En lugar de remover totalmente la seal del reloj, algunos diseos de CPU permiten a ciertas unidades del dispositivo ser asincrnicas, como por ejemplo, usar ALUs asincrnicas en conjuncin con pipelining superescalar para alcanzar algunas ganancias en el desempeo aritmtico. Mientras que no est completamente claro si los diseos totalmente asincrnicos pueden desempearse a un nivel comparable o mejor que sus contrapartes sncronas, es evidente que por lo menos sobresalen en las ms simples operaciones matemticas. Esto, combinado con sus excelentes caractersticas de consumo
Pgina 164

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de energa y disipacin de calor, los hace muy adecuados para los computadores empotrados . Paralelismo

Fig.3.3 Modelo de un CPU subescalar. Note que toma quince ciclos para

terminar tres instrucciones. La descripcin de la operacin bsica de un CPU ofrecida en la seccin anterior describe la forma ms simple que puede tomar un CPU. Este tipo de CPU, usualmente referido como subescalar, opera sobre y ejecuta una sola instruccin con una o dos piezas de datos a la vez. Este proceso da lugar a una ineficacia inherente en CPUs subescalares. Puesto que solamente una instruccin es ejecutada a la vez, todo el CPU debe esperar que esa instruccin se complete antes de proceder a la siguiente instruccin. Como resultado, el CPU subescalar queda "paralizado" en instrucciones que toman ms de un ciclo de reloj para completar su ejecucin. Incluso la adicin de una segunda unidad de ejecucin no mejora mucho el desempeo. En lugar de un camino quedando congelado, ahora dos caminos se paralizan y aumenta el nmero de transistores no usados. Este diseo, en donde los recursos de ejecucin del CPU pueden operar con solamente una instruccin a la vez, solo puede, posiblemente, alcanzar el desempeo escalar (una instruccin por ciclo de reloj). Sin embargo, el desempeo casi siempre es subescalar (menos de una instruccin por ciclo). Las tentativas de alcanzar un desempeo escalar y mejor, han resultado en una variedad de metodologas de diseo que hacen comportarse al CPU menos linealmente y ms en paralelo. Cuando se refiere al paralelismo en los CPU, generalmente son usados dos trminos para clasificar estas tcnicas de diseo.

Pgina 165

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El paralelismo a nivel de instruccin, en ingls Instruction Level Parallelism (ILP), busca aumentar la tasa en la cual las instrucciones son ejecutadas dentro de un CPU, es decir, aumentar la utilizacin de los recursos de ejecucin en la pastilla

El paralelismo a nivel de hilo de ejecucin, en ingls thread level parallelism (TLP), que se propone incrementar el nmero de hilos (efectivamente programas individuales) que un CPU pueda ejecutar simultneamente.

Cada metodologa se diferencia tanto en las maneras en las que estn implementadas, como en la efectividad relativa que producen en el aumento del desempeo del CPU para una aplicacin.[10] ILP: Entubado de instruccin y arquitectura superescalar

Fig.3.4 Tubera bsica de cinco etapas. En el mejor de los casos, esta tubera

puede sostener un ratio de completado de una instruccin por ciclo. Uno de los ms simples mtodos usados para lograr incrementar el paralelismo es comenzar los primeros pasos de leer y decodificar la instruccin antes de que la instruccin anterior haya terminado de ejecutarse.(vase en la Fig.3.4) sta es la forma ms simple de una tcnica conocida como instruction pipelining (entubado de instruccin), y es utilizada en casi todos los CPU de propsito general modernos. Al dividir la ruta de ejecucin en etapas discretas, la tubera permite que ms de una instruccin sea ejecutada en cualquier tiempo. Esta separacin puede ser comparada a una lnea de ensamblaje, en la cual una instruccin es hecha ms completa en cada etapa hasta que sale de la tubera de ejecucin y es retirada. Sin embargo, la tubera introduce la posibilidad de una situacin donde es necesario terminar el resultado de la operacin anterior para completar la
Pgina 166

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

operacin siguiente; una condicin llamada a menudo como conflicto de dependencia de datos. Para hacer frente a esto, debe ser tomado un cuidado adicional para comprobar estas clases de condiciones, y si esto ocurre, se debe retrasar una porcin de la tubera de instruccin. Naturalmente, lograr esto requiere circuitera adicional, los procesadores entubados son ms complejos que los subescalares, pero no mucho. Un procesador entubado puede llegar a ser casi completamente escalar, solamente inhibido por las abruptas paradas de la tubera (una instruccin durando ms de un ciclo de reloj en una etapa).

Fig.3.5

Tubera superescalar simple. Al leer y despachar dos instrucciones a la vez, un mximo de dos instrucciones por ciclo pueden ser completadas.(vase en la
Fig.3.5).

Una mejora adicional sobre la idea del entubado de instruccin (instruction pipelining) condujo al desarrollo de un mtodo que disminuye incluso ms el tiempo ocioso de los componentes del CPU. Diseos que se dice que son superescalares incluyen una larga tubera de instruccin y mltiples unidades de ejecucin idnticas. En una tubera superescalar, mltiples instrucciones son ledas y pasadas a un despachador, que decide si las instrucciones se pueden o no ejecutar en paralelo (simultneamente). De ser as, son despachadas a las unidades de ejecucin disponibles, dando por resultado la capacidad para que varias instrucciones sean ejecutadas simultneamente. En general, cuanto ms instrucciones un CPU superescalar es capaz de

Pgina 167

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

despachar simultneamente a las unidades de ejecucin en espera, ms instrucciones sern completadas en un ciclo dado. La mayor parte de la dificultad en el diseo de una arquitectura superescalar de CPU descansa en crear un despachador eficaz. El despachador necesita poder determinar rpida y correctamente si las instrucciones pueden ejecutarse en paralelo, tan bien como despacharlas de una manera que mantenga ocupadas tantas unidades de ejecucin como sea posible. Esto requiere que la tubera de instruccin sea llenada tan a menudo como sea posible y se incrementa la necesidad, en las arquitecturas superescalares, de cantidades significativas de cach de CPU. Esto tambin crea tcnicas para evitar peligros como la prediccin de bifurcacin, ejecucin especulativa, y la ejecucin fuera de orden, cruciales para mantener altos niveles de desempeo. La prediccin de bifurcacin procura predecir qu rama (o trayectoria) tomar una instruccin condicional, el CPU puede minimizar el nmero de tiempos que toda la tubera debe esperar hasta que sea completada una instruccin condicional. La ejecucin especulativa frecuentemente proporciona aumentos modestos del desempeo al ejecutar las porciones de cdigo que pueden o no ser necesarias despus de que una operacin condicional termine. La ejecucin fuera de orden cambia en algn grado el orden en el cual son ejecutadas las instrucciones para reducir retardos debido a las dependencias de los datos. En el caso donde una porcin del CPU es superescalar y una parte no lo es, la parte que no es superescalar sufre en el desempeo debido a las paradas de horario. El Intel Pentium original (P5) tena dos ALUs superescalares que podan aceptar, cada una, una instruccin por ciclo de reloj, pero su FPU no poda aceptar una instruccin por ciclo de reloj. As el P5 era superescalar en la parte de nmeros enteros pero no era superescalar de nmeros de coma (o punto [decimal]) flotante. El sucesor a la arquitectura del Pentium de Intel, el
Pgina 168

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

P6, agreg capacidades superescalares a sus funciones de coma flotante, y por lo tanto produjo un significativo aumento en el desempeo de este tipo de instrucciones. El entubado simple y el diseo superescalar aumentan el ILP de un CPU al permitir a un solo procesador completar la ejecucin de instrucciones en ratios que sobrepasan una instruccin por ciclo (IPC).[11] La mayora de los modernos diseos de CPU son por lo menos algo superescalares, y en la ltima dcada, casi todos los diseos de CPU de propsito general son superescalares. En los ltimos aos algo del nfasis en el diseo de computadores de alto ILP se ha movido del hardware del CPU hacia su interface de software, o ISA. La estrategia de la muy larga palabra de instruccin, very long instruction word (VLIW), causa a algn ILP a ser implcito directamente por el software, reduciendo la cantidad de trabajo que el CPU debe realizar para darle un empuje significativo al ILP y por lo tanto reducir la complejidad del diseo. TLP: ejecucin simultnea de hilos Otra estrategia comnmente usada para aumentar el paralelismo de los CPU es incluir la habilidad de correr mltiples hilos (programas) al mismo tiempo. En general, CPUs con alto TLP han estado en uso por mucho ms tiempo que los de alto ILP. Muchos de los diseos en los que Seymour Cray fue pionero durante el final de los aos 1970 y los aos1980 se concentraron en el TLP como su mtodo primario de facilitar enormes capacidades de computacin (para su tiempo). De hecho, el TLP, en la forma de mejoras en mltiples hilos de ejecucin, estuvo en uso tan temprano como desde los aos 1950 . En el contexto de diseo de procesadores individuales, las dos metodologas principales usadas para lograr el TLP son, multiprocesamiento a nivel de chip, en ingls chip-level multiprocessing (CMP), y el multihilado simultneo, en ingls simultaneous multithreading (SMT). En un alto nivel, es muy comn construir computadores con mltiples CPU totalmente independientes en arreglos como multiprocesamiento simtrico (symmetric multiprocessing (SMP)) y acceso de memoria no uniforme (Non-Uniform Memory Access (NUMA)).[12]
Pgina 169

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Aunque son usados medios muy diferentes, todas estas tcnicas logran la misma meta: incrementar el nmero de hilos que el CPU(s) puede correr en paralelo. Los mtodos de paralelismo CMP y de SMP son similares uno del otro y lo ms directo. stos implican algo ms conceptual que la utilizacin de dos o ms CPU completos y CPU independientes. En el caso del CMP, mltiples "ncleos" de procesador son incluidos en el mismo paquete, a veces en el mismo circuito integrado.[13] Por otra parte, el SMP incluye mltiples paquetes independientes. NUMA es algo similar al SMP pero usa un modelo de acceso a memoria no uniforme. Esto es importante para los computadores con muchos CPU porque el tiempo de acceso a la memoria, de cada procesador, es agotado rpidamente con el modelo de memoria compartido del SMP, resultando en un significativo retraso debido a los CPU esperando por la memoria. Por lo tanto, NUMA es considerado un modelo mucho ms escalable, permitiendo con xito que en un computador sean usados muchos ms CPU que los que pueda soportar de una manera factible el SMP. El SMT se diferencia en algo de otras mejoras de TLP en que el primero procura duplicar tan pocas porciones del CPU como sea posible. Mientras es considerada una estrategia TLP, su implementacin realmente se asemeja ms a un diseo superescalar, y de hecho es frecuentemente usado en microprocesadores superescalares, como el POWER5 de IBM. En lugar de duplicar todo el CPU, los diseos SMT solamente duplican las piezas necesarias para lectura, decodificacin, y despacho de instrucciones, as como cosas como los registros de propsito general. Esto permite a un CPU SMT mantener sus unidades de ejecucin ocupadas ms frecuentemente al proporcionarles las instrucciones desde dos diferentes hilos de software. Una vez ms esto es muy similar al mtodo superescalar del ILP, pero ejecuta simultneamente instrucciones de mltiples hilos en lugar de ejecutar concurrentemente mltiples instrucciones del mismo hilo. Procesadores vectoriales y el SIMD
Pgina 170

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Un menos comn pero cada vez ms importante paradigma de CPU (y de hecho, de computacin en general) trata con vectores. Los procesadores de los que se ha hablado anteriormente son todos referidos como cierto tipo de dispositivo escalar.[14] Como implica su nombre, los procesadores vectoriales se ocupan de mltiples piezas de datos en el contexto de una instruccin, esto contrasta con los procesadores escalares, que tratan una pieza de dato por cada instruccin. Estos dos esquemas de ocuparse de los datos son generalmente referidos respectivamente como SISD (Single Instruction, Single Data|) (Simple Instruccin, Simple Dato) y SIMD (Single Instruction, Multiple Data) (Simple Instruccin, Mltiples Datos). La gran utilidad en crear CPUs que se ocupen de vectores de datos radica en la optimizacin de tareas que tienden a requerir la misma operacin, por ejemplo, una suma, o un producto escalar, a ser realizado en un gran conjunto de datos. Algunos ejemplos clsicos de este tipo de tareas son las aplicaciones multimedia (imgenes, vdeo, y sonido), as como muchos tipos de tareas cientficas y de ingeniera. Mientras que un CPU escalar debe completar todo el proceso de leer, decodificar, y ejecutar cada instruccin y valor en un conjunto de datos, un CPU vectorial puede realizar una simple operacin en un comparativamente grande conjunto de datos con una sola instruccin. Por supuesto, esto es solamente posible cuando la aplicacin tiende a requerir muchos pasos que apliquen una operacin a un conjunto grande de datos. La mayora de los primeros CPU vectoriales, como el Cray-1, fueron asociados casi exclusivamente con aplicaciones de investigacin cientfica y criptografa. Sin embargo, a medida que la multimedia se desplaz en gran parte a medios digitales, ha llegado a ser significativa la necesidad de una cierta forma de SIMD en CPUs de propsito general. Poco despus de que comenzara a ser comn incluir unidades de coma flotante en procesadores de uso general, tambin comenzaron a aparecer especificaciones e implementaciones de unidades de ejecucin SIMD para los CPU de uso general. Algunas de estas primeras especificaciones SIMD, como el MMX de Intel, fueron solamente para nmeros enteros. Esto demostr ser un impedimento significativo para algunos
Pgina 171

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

desarrolladores de software, ya que muchas de las aplicaciones que se beneficiaban del SIMD trataban sobre todo con nmeros de coma flotante. Progresivamente, stos primeros diseos fueron refinados y rehechos en alguna de las comunes, modernas especificaciones SIMD, que generalmente estn asociadas a un ISA. Algunos ejemplos modernos notables son el SSE de Intel y el AltiVec relacionado con el PowerPC (tambin conocido como VMX).

3.1.2 Controlador Del Bus


El Bus es la va a travs de la que se van a transmitir y recibir todas las comunicaciones, tanto internas como externas, del sistema informtico. El bus es solamente un Dispositivo de Transferencia de Informacin entre los componentes conectados a l, no almacena informacin alguna en ningn momento. Los datos, en forma de seal elctrica, slo permanecen en el bus el tiempo que necesitan en recorrer la distancia entre los dos componentes implicados en la transferencia. En una unidad central de sistema tpica el bus se subdivide en tres buses o grupos de lneas. Bus de Direcciones.

Bus de Datos.

Bus de Control.

Bus de Direcciones. Es un canal de comunicaciones constituido por lneas que apuntan a la direccin de memoria que ocupa o va a ocupar la informacin a tratar. Una vez direccionada la posicin, la informacin, almacenada en la memoria hasta ese momento, pasar a la CPU a travs del bus de datos. Para determinar la cantidad de memoria directamente accesible por la CPU, hay que tener en cuenta el nmero de lneas que integran el bus de
Pgina 172

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

direcciones, ya que cuanto mayor sea el nmero de lneas, mayor ser la cantidad de direcciones y, por tanto, de memoria a manejar por el sistema informtico. Bus de Datos. El bus de datos es el medio por el que se transmite la instruccin o dato apuntado por el bus de direcciones. Es usado para realizar el intercambio de instrucciones y datos tanto internamente, entre los diferentes componentes del sistema informtico, como externamente, entre el sistema informtico y los diferentes subsistemas perifricos que se encuentran en el exterior, una de las caractersticas principales de una computadora es el nmero de bits que puede transferir el bus de datos (16, 32, 64, etc.). cuanto mayor sea este nmero, mayor ser la cantidad de informacin que se puede manejar al mismo tiempo. Bus de Control. Es un nmero variable de lneas a travs de las que se controlan las unidades complementaras. El nmero de lneas de control depender directamente de la cantidad que pueda soportar el tipo de CPU utilizada y de su capacidad de direccionamiento de informacin. FUNCIONAMIENTO En el bus se encuentran dos pistas separadas, el bus de datos y el bus de direcciones. La CPU escribe la direccin de la posicin deseada de la memoria en el bus de direcciones accediendo a la memoria, teniendo cada una de las lneas carcter binario. Es decir solo pueden representar 0 o 1 y de esta manera forman conjuntamente el numero de la posicin dentro de la memoria (es decir: la direccin). Cuanto mas lneas haya disponibles, mayor es la direccin mxima y mayor es la memoria a la cual puede dirigirse de esta forma. En el bus de direcciones original haban ya 20 direcciones, ya que con 20 bits se puede dirigir a una memoria de 1 MB y esto era exactamente lo que corresponda a la CPU.
Pgina 173

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Esto que en le teora parece tan fcil es bastante mas complicado en la prctica, ya que aparte de los bus de datos y de direcciones existen tambin casi dos docenas ms de lneas de seal en la comunicacin entre la CPU y la memoria, a las cuales tambin se acude. Todas las tarjetas del bus escuchan, y se tendr que encontrar en primer lugar una tarjeta que mediante el envo de una seal adecuada indique a la CPU que es responsable de la direccin que se ha introducido. Las dems tarjetas se despreocupan del resto de la comunicacin y quedan a la espera del prximo ciclo de transporte de datos que quizs les incumba a ellas.

PROCESADOR Bus de direcciones Bus de datos 8086 8088 80186 80188 80286 80386 SX 80386 DX 80486 DX 80486 SX PENTIUM 20 20 20 20 24 32 32 32 32 32 16 8 16 8 16 16 32 32 32 64 64
Pgina 174

PENTIUM PRO 32

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Este mismo concepto es tambin la razn por la cual al utilizar tarjetas de ampliacin en un PC surgen problemas una y otra vez, si hay dos tarjetas que reclaman para ellas el mismo campo de direccin o campos de direccin que se solapan entre ellos. Los datos en si no se mandan al bus de direcciones sino al bus de datos. El bus XT tena solo 8 bits con lo cual slo poda transportar 1 byte a la vez. Si la CPU quera depositar el contenido de un registro de 16 bits o por valor de 16 bits, tena que desdoblarlos en dos bytes y efectuar la transferencia de datos uno detrs de otro. De todas maneras para los fabricantes de tarjetas de ampliacin, cuyos productos deben atenderse a este protocolo, es de una importancia bsica la regulacin del tiempo de las seales del bus, para poder trabajar de forma inmejorable con el PC. Pero precisamente este protocolo no ha sido nunca publicado por lBM con lo que se obliga a los fabricantes a medir las seales con la ayuda de tarjetas ya existentes e imitarlas. Por lo tanto no es de extraar que se pusieran en juego tolerancias que dejaron algunas tarjetas totalmente eliminadas. ESTRUCTURACIN DE LOS BUSES Existen dos organizaciones fsicas de operaciones E/S que tienen que ver con los buses que son: Bus nico Bus dedicado La primera gran diferencia entre estas dos tipos de estructuras es que el bus nico no permite un controlador DMA (todo se controla desde la CPU), mientras que el bus dedicado si que soporta este controlador. El bus dedicado trata a la memoria de manera distinta que a los perifricos (utiliza un bus especial) al contrario que el bus nico que los considera a ambos como posiciones de memoria (incluso equipara las operaciones E/S con
Pgina 175

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

las de lectura/escritura en memoria). Este bus especial que utiliza el bus dedicado tiene 4 componentes fundamentales: Datos: Intercambio de informacin entre la CPU y los perifricos. Control: Lleva informacin referente al estado de los perifricos (peticin de interrupciones). Direcciones: Identifica el perifrico referido. Sincronizacin: Temporiza las seales de reloj. La mayor ventaja del bus nico es su simplicidad de estructura que le hace ser ms econmico, pero no permite que se realice a la vez transferencia de informacin entre la memoria y el procesador y entre los perifricos y el procesador. Por otro lado el bus dedicado es mucho ms flexible y permite transferencias simultneas. Por contra su estructura es ms compleja y por tanto sus costes son mayores. EL BUS XT y EL BUS ISA (AT) Cuando en 1980 IBM fabric su primer PC, este contaba con un bus de expansin conocido como XT que funcionaba a la misma velocidad que los procesadores Intel 8086 y 8088 (4.77 Mhz). El ancho de banda de este bus (8 bits) con el procesador 8088 formaba un tandem perfecto, pero la ampliacin del bus de datos en el 8086 a 16 bits dejo en entredicho este tipo de bus (aparecieron los famosos cuellos de botella). Dada la evolucin de los microprocesadores el bus del PC no era ni mucho menos la solucin para una comunicacin fluida con el exterior del micro. En definitiva no poda hablarse de una autopista de datos en un PC cuando esta slo tena un ancho de 8 bits. Por lo tanto con la introduccin del AT apareci un nuevo bus en el mundo del PC, que en relacin con el bus de datos tena finalmente 16 bits (ISA), pero que era compatible con su antecesor. La nica
Pgina 176

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

diferencia fue que el bus XT era sncrono y el nuevo AT era asncrono. Las viejas tarjetas de 8 bits de la poca del PC pueden por tanto manejarse con las nuevas tarjetas de 16 bits en un mismo dispositivo. De todas maneras las tarjetas de 16 bits son considerablemente ms rpidas, ya que transfieren la misma cantidad de datos en comparacin con las tarjetas de 8 bits en la mitad de tiempo (transferencia de 16 bits en lugar de transferencia de 8 bits). No tan solo se ampli el bus de datos sino que tambin se ampli el bus de direcciones, concretamente hasta 24 bits, de manera que este se poda dirigir al AT con memoria de 16 MB. Adems tambin se aument la velocidad de cada una de las seales de frecuencia, de manera que toda la circulacin de bus se desarrollaba ms rpidamente. De 4.77 Mhz en el XT se pas a 8.33 Mhz. Como consecuencia el bus forma un cuello de botella por el cual no pueden transferirse nunca los datos entre la memoria y la CPU lo suficientemente rpido. En los discos duros modernos por ejemplo, la relacin (ratio) de transferencia de datos ya es superior al ratio del bus. A las tarjetas de ampliacin se les ha asignado incluso un freno de seguridad, concretamente en forma de una seal de estado de espera (wait state), que deja todava mas tiempo a las tarjetas lentas para depositar los datos deseados en la CPU. Especialmente por este motivo el bus AT encontr sucesores de ms rendimiento en Micro Channel y en el Bus EISA, que sin embargo, debido a otros motivos, hasta ahora no se han podido introducir en el mercado. La coexistencia hoy en da de tarjetas de ampliacin de 8 bits y de tarjetas de ampliacin de 16 bits es problemtica mientras el campo de direcciones, del cual estas tarjetas son responsables, se encuentre en cualquier rea de 128 KB. El dilema empieza cuando una tarjeta de 16 bits debe sealizar mediante una lnea de control al principio de una transferencia de datos, que ella

Pgina 177

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

puede recoger una palabra de 16 bits del bus y que al contrario de una tarjeta de 8 bits no tiene que desdoblar la transferencia en dos bytes. Sin embargo esta seal la tiene que mandar en un momento en el que todava no puede saber que la direccin del bus de datos se refiere verdaderamente a ella y que por tanto tiene la obligacin de contestar. Ya que de las 24 lneas de direccin que contienen la direccin deseada, hasta este momento slo estn inicializadas correctamente las lneas A17 hasta A23, con lo cual la tarjeta reconoce slo los bits 17 hasta 23 de la direccin. Estos sin embargo cubren siempre un rea completa de 128 KB, independientemente de lo que pueda haber en los bits de direccin 0 hasta 16. La tarjeta en este momento slo sabe si la direccin de la memoria se encuentre en el rea entre 0 y 127 KB, 128 y 255, etc. Si en este momento la tarjeta de 16 bits manda por tanto una seal para una transmisin de 16 bits, hablar de esta forma por el resto de las tarjetas que se encuentren dentro de este rea. Esto podr notarse acto seguido ya que una vez tambin hayan llegado al bus los bits de direccin 0 a 16, quedar claro cual es la tarjeta a la cual realmente se estaba dirigiendo. Si realmente se trata de una tarjeta de 16 bits todo ir bien. Pero si se estaba dirigiendo a una tarjeta de 8 bits, la tarjeta de 16 bits se despreocupa del resto de la transferencia y deja la tarjeta de 8 bits a su propia suerte. sta no podr resolver la transferencia ya que est configurada slo para transmisiones de 8 bits. En cualquier caso el resultado ser una funcin de error de la tarjeta de ampliacin. Conector B1 B-13 B-14 Funcin Tierra Escritura E/S Lectura E/S
Pgina 178

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

B21-B25 A1-A13

Interrupciones entre 7-3 Mira si E/S preparado y enva los datos a direcciones

D1-D18 C1-C18

Hace peticiones y reconocimiento de DMA Desbloquea las Direcciones y pasa los datos a mem.

BUS MICRO CHANNEL (MCA) Vistas las limitaciones que tena el diseo del bus ISA en IBM se trabaj en un nueva tecnologa de bus que comercializ con su gama de ordenadores PS/2. El diseo MCA (Micro Channel Arquitecture) permita una ruta de datos de 32 bits, ms ancha, y una velocidad de reloj ligeramente ms elevada de 10 Mhz, con una velocidad de transferencia mxima de 20 Mbps frente a los 8 Mbps del bus ISA. Pero lo que es ms importante el novedoso diseo de bus de IBM incluy un circuito de control especial a cargo del bus, que le permita operar independientemente de la velocidad e incluso del tipo del microprocesador del sistema. Bajo MCA, la CPU no es ms que uno de los posibles dispositivos dominantes del bus a los que se puede acceder para gestionar transferencias. La circuitera de control, llamada CAP (punto de decisin central), se enlaza con un proceso denominado control del bus para determinar y responder a las prioridades de cada uno de los dispositivos que dominan el bus. Para permitir la conexin de ms dispositivos, el bus MCA especifica interrupciones sensibles al nivel, que resultan ms fiables que el sistema de interrupciones del bus ISA. De esta forma es posible compartir interrupciones.
Pgina 179

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Pero adems se impusieron estndares de rendimiento superiores en las tarjetas de expansin. Es cierto que el progreso conlleva un precio: La nueva arquitectura de IBM es totalmente incompatible con las tarjetas de expansin que se incluyen en el bus ISA. Esto viene derivado de que los conectores de las tarjetas de expansin MCA eran ms pequeos que las de los buses ISA. De esto se pueden sacar dos conclusiones. Por un lado el coste de estas tarjetas era menor y por otro ofreca un mayor espacio interior en las pequeas cajas de sobremesa. Las seales del bus estaban reorganizadas de forma que se introduca una seal de tierra cada 4 conectores. De esta forma se ayudaba a reducir las interferencias. EISA (Extended ISA) El principal rival del bus MCA fue el bus EISA, tambin basado en la idea de controlar el bus desde el microprocesador y ensanchar la ruta de datos hasta 32 bits. Sin embargo EISA mantuvo compatibilidad con las tarjetas de expansin ISA ya existentes lo cual le obligo a funcionar a una velocidad de 8 Mhz (exactamente 8.33). Esta limitacin fue a la postre la que adjudico el papel de estndar a esta arquitectura, ya que los usuarios no vean factible cambiar sus antiguas tarjetas ISA por otras nuevas que en realidad no podan aprovechar al 100%. Su mayor ventaja con respecto al bus MCA es que EISA era un sistema abierto, ya que fue desarrollado por la mayora de fabricantes de ordenadores compatibles PC que no aceptaron el monopolio que intent ejercer IBM. Estos fabricantes fueron: AST, Compaq, Epson, Hewlett Packard, NEC, Olivetti, Tandy, Wyse y Zenith. Esta arquitectura de bus permite multiproceso, es decir, integrar en el sistema varios buses dentro del sistema, cada uno con su procesador. Si bien esta

Pgina 180

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

caracterstica no es utilizada ms que por sistemas operativos como UNIX o Windows NT. En una mquina EISA, puede haber al mismo tiempo hasta 6 buses principales con diferentes procesadores centrales y con sus correspondientes tarjetas auxiliares. En este bus hay un chip que se encarga de controlar el trfico de datos sealando prioridades para cada posible punto de colisin o bloqueo mediante las reglas de control de la especificacin EISA. Este chip recibe el nombre de Chip del Sistema Perifrico Integrado (ISP). Este chip acta en la CPU como un controlador del trfico de datos. El motivo para que ni MCA ni EISA hayan sustituido por completo a ISA es muy sencillo: Estas alternativas aumentaban el coste del PC (incluso ms del 50%) y no ofrecan ninguna mejora evidente en el rendimiento del sistema. Es ms, en el momento en que se presentaron estos buses (1987-1988) esta superioridad en el rendimiento no resultaba excesivamente necesaria: Muy pocos dispositivos llegaban a los lmites del rendimiento del bus ISA ordinario. LOCAL BUS Teniendo en cuenta las mencionadas limitaciones del bus AT y la infalibilidad de los buses EISA y MCA para asentarse en el mercado, en estos aos se han ideado otros conceptos de bus. Se inici con el llamado Vesa Local Bus (VLBus), que fue concebido y propagado independientemente por el comit VESA, que se propuso el definir estndares en el mbito de las tarjetas grficas y as por primera vez y realmente tuviera poco que ver con el diseo del bus del PC. Fueron y son todava las tarjetas grficas quienes sufren la menor velocidad del bus AT. Por eso surgi, en el Comit VESA, la propuesta para un bus ms rpido que fue el VESA Local Bus. Vesa Local Bus

Pgina 181

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Al contrario que con el EISA, MCA y PCI, el bus VL no sustituye al bus ISA sino que lo complementa. Un PC con bus VL dispone para ello de un bus ISA y de las correspondientes ranuras (slots) para tarjetas de ampliacin. Adems, en un PC con bus VL puede haber, sin embargo, una, dos o incluso tres ranuras de expansin, para la colocacin de tarjetas concebidas para el bus VL, casi siempre grficos. Solamente estos slots estn conectados con la CPU a travs de un bus VL, de tal manera que las otras ranuras permanecen sin ser molestadas y las tarjetas ISA pueden hacer su servicio sin inconvenientes. El VL es una expansin homogeneizada de bus local, que funciona a 32 bits, pero que puede realizar operaciones a 16 bits. VESA present la primera versin del estndar VL-BUS en agosto de 1992. La aceptacin por parte del mercado fue inmediata. Fiel a sus orgenes, el VL-BUS se acerca mucho al diseo del procesador 80486. De hecho presenta las mismas necesidades de seal de dicho chip, exceptuando unas cuantas menos estrictas destinadas a mantener la compatibilidad con los 386. La especificacin VL-Bus como tal, no establece lmites, ni superiores ni inferiores, en la velocidad del reloj, pero una mayor cantidad de conectores supone una mayor capacitancia, lo que hace que la fiabilidad disminuya a la par que aumenta la frecuencia. En la prctica, el VL-BUS no puede superar los 66 Mhz. Por este motivo, la especificacin VL-BUS original recomienda que los diseadores no empleen ms de tres dispositivos de bus local en sistemas que operan a velocidades superiores a los 33 Mhz. A velocidades de bus superiores, el total disminuye: a 40 Mhz solo se pueden incorporar dos dispositivos; y a 50 Mhz un nico dispositivo que ha de integrarse en la placa. En la prctica, la mejor combinacin de rendimiento y funciones aparece a 33 Mhz. Tras la presentacin del procesador Pentium a 64 bits, VESA comenz a trabajar en un nuevo estndar (VL-Bus versin 2.0).

Pgina 182

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La nueva especificacin define un interface de 64 bits pero que mantienen toda compatibilidad con la actual especificacin VL-BUS. La nueva especificacin 2.0 redefine adems la cantidad mxima de ranuras VL-BUYS que se permiten en un sistema sencillo. Ahora consta de hasta tres ranuras a 40 Mhz y dos a 50 Mhz, siempre que el sistema utilice un diseo de baja capacitancia. En el nombre del bus VL queda de manifiesto que se trata de un bus local. De forma distinta al bus ISA ste se acopla directamente en la CPU. Esto le proporciona por un lado una mejora substancial de la frecuencia de reloj (de la CPU) y hace que dependa de las lnea de control de la CPU y del reloj. A estas desventajas hay que aadirle que no en todos los puntos estn bien resueltas las especificaciones del comit VESA, hecho que a la larga le llevar a que el xito del bus VL se vea empaado por ello. En sistemas 486 econmicos se poda encontrar a menudo, pero su mejor momento ya ha pasado. PCI Se puede ver que el bus del futuro es claramente el PCI de Intel. PCI significa: interconexin de los componentes perifricos (Peripheral Component Interconnect) y presenta un moderno bus que no slo est meditado para no tener la relacin del bus ISA en relacin a la frecuencia de reloj o su capacidad sino que tambin la sincronizacin con las tarjetas de ampliacin en relacin a sus direcciones de puerto, canales DMA e interrupciones se ha automatizado finalmente de tal manera que el usuario no deber preocuparse ms por ello. El bus PCI es independiente de la CPU, ya que entre la CPU y el bus PCI se instalar siempre un controlador de bus PCI, lo que facilita en gran medida el trabajo de los diseadores de placas. Por ello tambin ser posible instalarlo en sistemas que no estn basados en el procesador Intel si no que pueden usar otros, como por ejemplo, un procesador Alpha de DEC. Tambin los procesadores PowerMacintosh de Apple se suministran en la actualidad con bus PCI.

Pgina 183

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Las tarjetas de expansin PCI trabajan eficientemente en todos los sistemas y pueden ser intercambiadas de la manera que se desee. Solamente los controladores de dispositivo deben naturalmente ser ajustados al sistema anfitrin (host) es decir a su correspondiente CPU. Como vemos el bus PCI no depende del reloj de la CPU, porque est separado de ella por el controlador del bus. Si se instalara una CPU ms rpida en su ordenador. no debera preocuparse porque las tarjetas de expansin instaladas no pudieran soportar las frecuencias de reloj superiores, pues con la separacin del bus PCI de la CPU stas no son influidas por esas frecuencias de reloj. As se ha evitado desde el primer momento este problema y defecto del bus VL. El bus PCI emplea un conector estilo Micro Channel de 124 pines (188 en caso de una implementacin de 64 bits) pero nicamente 47 de estas conexiones se emplean en una tarjeta de expansin ( 49 en caso de que se trate de un adaptador bus-master); la diferencia se debe a la incorporacin de una lnea de alimentacin y otra de tierra. Cada una de las seales activas del bus PCI est bien junto o frente a una seal de alimentacin o de tierra, una tcnica que minimiza la radiacin. El lmite prctico en la cantidad de conectores para buses PCI es de tres; como ocurre con el VL, ms conectores aumentaran la capacitancia del bus y las operaciones a mxima velocidad resultaran menos fiables. A pesar de presentar un rendimiento similar al de un bus local conectado directamente, en realidad PCI no es ms que la eliminacin de un paso en el micropocesador. En lugar de disponer de su propio reloj, un bus PCI se adapta al empleado por el microprocesador y su circuitera, por tanto los componentes del PCI estn sincronizados con el procesador. El actual estndar PCI autoriza frecuencias de reloj que oscilan entre 20 y 33 Mhz. A pesar que de que las tarjetas ISA no pueden ser instaladas en una ranura PCI, no debera renunciarse a la posibilidad de insercin de una tarjeta ISA. As
Pgina 184

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

pues, a menudo se puede encontrar en un equipo con bus PCI la interfaz puente llamada PCI-To-ISA-Bridge. Se trata de un chip que se conecta entre los distintos slots ISA y el controlador del bus PCI. Su tarea consiste en transponer las seales provenientes del bus PCI al bus ISA. De esta manera pueden seguir siendo utilizadas las tarjetas ISA al amparo del bus PCI. A pesar de que el bus PCI es el presente, sigue y seguir habiendo buses y tarjetas de expansin ISA ya que no todas las tarjetas de expansin requieren las ratios de transferencia que permite el bus PCI. Sin embargo las tarjetas grficas, tarjetas SCSI y tarjetas de red se han decantando cada vez ms fuertemente hacia el bus PCI. La ventaja de la velocidad de este sistema de bus es que este hardware puede participar del continuo incremento de velocidad de los procesadores. SCSI (Small Computer System Interface) Adems de todas las arquitecturas mencionadas anteriormente, tambin hay que mencionar a SCSI. Esta tecnologa tiene su origen a principios de los aos 80 cuando un fabricante de discos desarrollo su propia interface de E/S denominado SASI (Shugart Asociates System Interface) que debido a su gran xito comercial fue presentado y aprobado por ANSI en 1986. SCSI no se conecta directamente al microprocesador sino que utiliza de puente uno de los buses anteriormente nombrados. Podramos definir SCSI como un subsistema de E/S inteligente, completa y bidireccional. Un solo adaptador host SCSI puede controlar hasta 7 dispositivos inteligentes SCSI conectados a l. Una ventaja del bus SCSI frente a otros interfaces es que los dispositivos del bus se direccionan lgicamente en vez de fsicamente. Esto sirve para 2 propsitos: Elimina cualquier limitacin que el PC-Bios imponga a las unidades de disco.
Pgina 185

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El direccionamiento lgico elimina la sobrecarga que el host podra tener en manejar los aspectos fsicos del dispositivo como la tabla de pistas daadas. El controlador SCSI lo maneja. Es un bus que a diferencia de otros buses como el ESDI puede tener hasta 8 dispositivos diferentes conectados al bus (incluido el controlador). Aunque potencialmente varios dispositivos pueden compartir un mismo adaptador SCSI, slo 2 dispositivos SCSI pueden comunicarse sobre el bus al mismo tiempo. El bus SCSI puede configurarse de tres maneras diferenciadas que le dan gran versatilidad a este bus: nico iniciador/nico objetivo: Es la configuracin ms comn donde el iniciador es un adaptador a una ranura de un PC y el objetivo es el controlador del disco duro. Esta es una configuracin fcil de implementar pero no aprovecha las capacidades del bus SCSI, excepto para controlar varios discos duros. nico iniciador/Mltiple objetivo: Menos comn y raramente implementado. Esta configuracin es muy parecida a la anterior excepto para diferentes tipos de dispositivos E/S que se puedan gestionar por el mismo adaptador. Por ejemplo un disco duro y un reproductor de CD-ROM. Mltiple iniciador/Mltiple objetivo: Es mucho menos comn que las anteriores pero as es como se utilizan a fondo las capacidades del bus. Dentro de la tecnologa SCSI hay 2 generaciones y una tercera que est a la vuelta de la esquina. La primera generacin permita un ancho de banda de 8 bits y unos ratios de transferencia de hasta 5 MBps. El mayor problema de esta especificacin fue que para que un producto se denominara SCSI solo deba cumplir 4 cdigos de operacin de los 64 disponibles por lo que proliferaron en el mercado gran cantidad de dispositivos SCSI no compatibles entre s.

Pgina 186

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Esto cambi con la especificacin 2.0 ya que exiga un mnimo de 12 cdigos, por lo que aumentaba la compatibilidad entre dispositivos. Otro punto a favor de SCSI 2.0 es el aumento del ancho de banda de 8 a 16 y 32 bits. Esto se consigue gracias a las implementaciones wide (ancho) y fast (rpido). Combinando estas dos metodologas se llega a conseguir una transferencia mxima de 40 Mbps con 32 bits de ancho (20 Mbps con un ancho de banda de 16 bits). El protocolo SCSI 3.0 no establecer nuevas prestaciones de los protocolos, pero si refinar el funcionamiento de SCSI. Adems de incluir formalmente el uso del conector P de 68 pines wide SCSI, por ejemplo, tambin especifica el uso de cables de fibra ptica. Otra posible modificacin es el soporte para ms de 8 dispositivos por cadena.

3.1.3 Puertos De Entrada/Salida


Un puerto es el lugar donde el CPU se comunica con otros dispositivos, existen de varios tipos, hay puertos de entrada, de salida y ambos. Adems estos pueden ser seriales o paralelos. PUERTOS DE ENTRADA Estos puertos recogen datos de algn dispositivo externo, externo se refiere a estar fuera del CPU, no del gabinete. Existen muchos dispositivos perifricos que se conectan a un puerto de entrada, por ejemplo tenemos al teclado y al Mouse, tambin estn los lpices pticos, los lectores de cdigo de barras, etc. PUERTOS DE SALIDA Son todos aquellos por donde el CPU enva datos a otros dispositivos, por ejemplo estn la salida de video y de sonido. PUERTOS DE ENTRADA/SALIDA

Pgina 187

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Estos son una clase de puertos por donde el CPU puede enviar y recibir informacin. Son muy importantes, ya que entre estos se encuentran las memorias del CPU como son la RAM, ROM, los floppys y discos duros. Estos puertos pueden ser usados para controlar dispositivos, tales como las impresoras y los quemadores externos, por ejemplo. Nosotros vamos a hablar acerca de los puertos que se encuentran fuera del gabinete, hablaremos de los puertos de teclado, Mouse, impresoras, etc. La computadora por s mismas no sera capaz de realizar operaciones tiles para nosotros si no podemos comunicarnos con ella, necesita dispositivos perifricos por donde pueda darnos mensajes y nosotros podemos enviarle rdenes. Ahora bien, existen infinidad de dispositivos que sirven de extensin a la computadora, muchos son para fines muy especficos y no se pueden abarcar, entre los dispositivos que son de uso comn se encuentra la impresora, el teclado, el Mouse y el monitor. PUERTO SERIAL El puerto serial es aquel que enva y recibe los datos BIT por BIT, entre los puertos seriales se puede mencionar el puerto de teclado, o el puerto del MODEM.

PUERTO PARALELO Este tipo de puerto transmite la informacin byte por byte, o sea que transmite ocho bits al mismo tiempo, de forma paralela. Un puerto paralelo por excelencia pues es el puerto para impresora. Se puede observar que un puerto de entrada puede ser paralelo o serial, lo mismo que un puerto de entrada o de entada/salida. A cada puerto la bios le asigna una direccin de memoria para que pueda trabajar, dependiendo de que clase de puerto sea se le asigna un determinado espacio exclusivo para l.

Pgina 188

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Por medio de estas localidades de memoria el sistema puede enviarles o recibir informacin, es una especie de memoria de intercambio para la transmisin de datos de un lugar a otro. A esto se le llama espacio de localidades de memoria y se realiza dentro del primer kilo bite de la memoria principal. Existen otras asignaciones de memoria en otras capas superiores de memoria principal. Existen otras asignaciones de memoria en otras capas superiores de memoria pero estas son hechas por el sistema operativo y por los dems programas, pero estas asignaciones son para fines especficos de los dems programas. Los puertos no solo se limitan a recibir la informacin, o enviarla, segn sea el caso. El puerto provee la corriente elctrica necesaria para el funcionamiento del dispositivo y revisa el estado de este.

3.1.4 Controlador De Interrupciones


Procesamiento de la Interrupcin Cuando un dispositivo de E/S termina una operacin de E/S, se produce la siguiente secuencia de eventos: El dispositivo enva una seal de interrupcin al procesador. El procesador termina la ejecucin de la instruccin en curso antes de responder a la interrupcin. .El procesador comprueba si hay alguna interrupcin. Si hay alguna, enva una seal de reconocimiento al dispositivo que la origin. El procesador debe prepararse para transferir el control a la rutina de interrupcin. Debe guardar la informacin necesaria para continuar con el proceso en curso en el punto en que se interrumpi. Guarda en la pila del sistema el contenido de los registros, etc. El procesador carga en el PC la direccin de inicio del programa de gestin o servicio de interrupcin solicitada. Una vez modificado el PC, el procesador contina con el ciclo de instruccin siguiente. Es decir, se transfiere el control a la rutina servidora de la interrupcin.

Pgina 189

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Cuando finaliza el servicio de la interrupcin, se restauran los valores de los registros. El controlador de interrupciones es un chip responsable de coordinar las interrupciones a la CPU. Acta como un policia que administra las solicitudes de servicio (interrupciones) dirigidas a la CPU. Si algn dispositivo requiere acceso a la CPU primero tiene que recurrir a este chip, el cual decide quien de los solicitantes tiene la mas alta prioridad y le permite hablar con el jefe (la CPU). Esta a su vez, atiende al solicitante y si no puede se lo indica. Un dispositivo requiere el servicio. La CPU lo reconoce a travs del policia. Este le dice al jefe que alguien quiere una cita, filtra la cita conforme a prioridades y la otorga. La CPU obtiene el permiso del solicitante (la direccin en memoria donde se encuentra su pase). La CPU ya con el pase del solicitante en la mano, se dirige a dicha direccin y empieza a ejecutar las instrucciones que all se encuentran. Al terminar, la CPU regresa a su lugar de origen para continuar con lo que estaba haciendo (dejando todo en su lugar tal como estaba antes de haber sido interrumpida).

3.1.5 Controladores De DMA


EL CONTROLADOR DE DMA (DIRECT MEMORY ACCESS) Para evitar saturar al microprocesador, algunos perifricos pueden transferir datos a la memoria del computador o viceversa, sin pasar a travs de la CPU. Esta operacin se llama Acceso Directo a Memoria, y se controla mediante un chip conocido como controlador de DMA. El propsito principal del DMA es permitir al controlador del disco que lea, o escriba, datos sin involucrar al microprocesador. Como las operaciones de E/S desde el disco son relativamente lentas, el DMA puede aumentar un poco las prestaciones del ordenador. Los sistemas actuales tienen 8 canales DMA (0 7).

Pgina 190

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

DMA (Direct Memory Access). La E/S con interrupciones, aunque ms eficiente que la E/S programada, tambin requiere la intervencin del CPU para transferir datos entre la memoria y el mdulo de E/S. Consideren el siguiente ejemplo. Cuando se va a leer una lnea desde un terminal, el primer carcter escrito es enviado al computador. Cuando el carcter es recibido por el controlador, ste interrumpe al CPU. El CPU le da servicio a la interrupcin y luego continua con el proceso que estaba ejecutando. Esto es posible cuando el dispositivo es muy lento comparado con el CPU. Entre un carcter y otro el CPU lleva a cabo gran cantidad de procesamiento. Pero qu sucede cuando estamos trabajando con dispositivos de E/S ms veloces? Tendramos interrupciones muy seguidas y se estara desperdiciando mucho tiempo. Para evitar esto, se utiliza DMA para dispositivos de E/S de alta velocidad. E1 controlador del dispositivo transfiere un bloque de datos desde o para sus buffers de almacenamiento a memoria directamente sin intervencin del CPU. Solo se produce una interrupcin por bloque en lugar de tener una interrupcin por cada byte (o palabra). Por ejemplo, un programa solicita una transferencia de datos. El Sistema de Operacin busca un buffer disponible. El controlador de DMA tiene sus registros actualizados con las direcciones del fuente y del destino y la longitud de la transferencia. Por lo general esta actualizacin es realizada por el manejador de dispositivo (rutina). Se indica al controlador de DMA a travs de bits de control en un registro de control pare que inicie la operacin de E/S. Mientras tanto el CPU puede llevar a cabo otras operaciones. El controlador de DMA interrumpe el CPU cuando la transferencia ha sido terminada. El CPU interviene solo al comienzo y al final de la transferencia. Transferencias va DMA.

Pgina 191

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Algunos dispositivos de entrada/salida envan datos a la memoria ms rpido de lo que el microprocesador puede manejar. El controlador de DMA (Direct Memory Access) es un circuito integrado dedicado que puede enviar y recibir datos ms rpido que el microprocesador. Luego, dispositivos como discos pticos y magnticos utilizan este integrado para acceder a la memoria del sistema. El controlador de DMA (Direct Memory Access) toma prestado los buses de datos, de direcciones y de control del sistema y enva un nmero programado de bytes desde un dispositivo de entrada/salida hasta la memoria. El "8237 DMA controller" es el nombre del circuito integrado que utilizan los PCs para esta funcin. Cuando un dispositivo tiene un bloque de datos preparado para enviar a la memoria, enva una peticin al DMA poniendo una seal DRQn a "1". Si el canal de DMA se halla disponible, el DMA enviar una seal HRQ (hold request) al microprocesador. El microprocesador responder dejando los buses libres y enviando una seal HLDA (hold acknowledge) al DMA. Luego el DMA obtiene el control de los buses poniendo la seal AEN a nivel alto y enva la direccin de memoria a ser escrita. Despus el DMA enva la seal de DACKn (DMA acknowledge) al dispositivo. Finalmente el controlador de DMA se ocupa de manejar las seales de MEMW y IOR del bus de control. Cuando la transferencia de datos se ha completado vuelve a poner la seal HRQ a nivel bajo y el procesador recupera el control de los buses de nuevo.

Si un dispositivo necesita datos de la memoria, el proceso es similar. La nica diferencia consiste en que el controlador de DMA usa las seales MEMR y IOW en el bus control.

Pgina 192

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.6 En la Fig.3.6, Fig.3.7, Fig.3.8 pueden verse: un perifrico con su correspondiente controlador de E/S, un controlador de DMA y las seales de pedido y concesin del bus que permiten alternar el bus master entre la CPU y el controlador de DMA.

Fig.3.7 El perifrico solicita una transferencia al controlador de DMA, el cual a su vez solicita el bus a la CPU. Si la CPU no est utilizando el bus ni est en estado
Pgina 193

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

LOCK, lo concede al controlador de DMA, el cual a su vez informa al perifrico para que prepare los datos a transferir. En una transferencia de entrada, los datos se mueven desde el perifrico (1/0) a la memoria por el bus de datos sin parar por el controlador de DMA y sin intervencin de la CPU. Las lneas de control para leer la 1/0 (IOR*) y para escribir la memoria (MEMW*) son manejadas por el controlador de DMA De la misma forma, en una transferencia de salida los datos se mueven desde la memoria a la 1/0 y el controlador de DMA maneja las lneas de control para leer la memoria (MEMR*) y para escribir en el perifrico (IOW*).

Fig.3.8

3.1.6 Circuitos De Temporizacin Y Control.


El temporizador es un circuito que se encuentra en la tarjeta matriz (Mother Borrad) de la PC y que es capaz de mantener una cuenta de tiempo basada en
Pgina 194

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

el reloj de la computadora. Puede usarse para calcular el intervalo entre dos mediciones de tiempo o para generar pausas. Este chip tiene la capacidad de realizar diferentes funciones de conteo. Es til para medir el tiempo que dura cierto proceso o para mantener actualizadas la hora del da y la fecha si se deja la PC conectada y encendida (en el caso de computadoras anteriores a la AT, pues esta tiene un reloj de batera integrado; a este respaldo de batera se le conoce como CMOS (complementary MOS). El chip mantiene tres contadores independientes (definidos como 0, 1, 2), cada uno de los cuales es alimentado por una seal que equivale a 1.19318 MHZ. El contador obtiene una capacidad mxima de conteo que asciende a 65 536. Su salida tiene una frecuencia de 18.2 HZ.(1.19/65536) aproximadamente. Por lo tanto, cualquier accin que interrumpa a la PC ocurrir 18.2 veces por segundo (cada 55 ms o cada 0.055 segundos en forma redondeada). Dicha accin genera una interrupcin llamada interrupcin del contador, la cual interrumpe brevemente la CPU e incrementa la cuenta del da. Cuando el contador del canal cero llega a 0 (los tres contadores del temporizador timer siempre cuentan en forma regresiva), significa que la hora es exactamente las 24:00 (hora militar) y entonces es inicializado a cero de nuevo. El contador 1 es usado por la PC para realizar el proceso de refrescamiento de memoria (DMA memory Refresh) y no debe ser alterado bajo ninguna circunstancia. El contador 2 generalmente se encuentra programado para trabajar con la bocina. Los primeros dos contadores (0 y 1) envan una interrupcin a la CPU mientras que el 2 no lo hace.

3.1.7 Controladores De Video

Pgina 195

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Los controladores son circuitos de entrada que tienen todas las impresoras. Son los que procesan la informacin en primer lugar para saber exactamente qu les est llegando y como manipular los datos. Bsicamente, un controlador de una impresora recoge los datos que proceden del PC y los convierte en datos de imagen que debern pasar a lo que llamamos video interface de la impresora. Este otro dispositivo, se encarga de recuperar los datos que ha dejado el controlador e inyectarlos hasta el sistema de escritura del perifrico. Los datos de imagen indican si un punto es blanco o negro, en c aso de una impresora de color de que color ser ese punto Veamos un ejemplo de la formacin de una letra A: 1. El controlador recibe un dato del ordenador. Ese dato es el nmero 41h. Segn una tabla el controlador interpreta que 41h quiere decir A.(vase en la
Fig.3.9)

Pgina 196

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.9 2. tras interpretar el dato como una A el controlador busca en sus fuentes la forma de esa letra.(vase en la Fig.3.10)

Fig.3.10 3. una vez se ha creado toda la imagen de una pgina esta se le pasa al video interface. Los datos de una pgina pasados a imagen se llaman datos rasterizados o rpeado. Los datos rasterzados se transmiten a la video interface de lnea a lnea.(vase en la Fig.3.11).

Pgina 197

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.11

Pgina 198

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

3.2 Aplicaciones 3.2.1 Entrada/Salida


PS/2: El conector PS/2 o puerto PS/2 toma su nombre de la serie de ordenadores IBM Personal System/2 en que es creada por IBM en 1987, y empleada para conectar teclados y ratones. MOUSE: El mouse o ratn es un perifrico de computadora de uso manual, generalmente fabricado en plstico, utilizado como entrada o control de datos. Se utiliza con una de las dos manos del usuario y detecta su movimiento relativo en dos dimensiones por la superficie horizontal en la que se apoya, reflejndose habitualmente a travs de un puntero o flecha en el monitor.(vase en la Fig.3.12)

Fig.3.12 TECLADO: Un teclado de computadora (ordenador) es un perifrico, fsico o virtual (por ejemplo teclados en pantalla o teclados lser), utilizado para la introduccin de rdenes y datos en una computadora.(vase en la Fig.3.13)

Pgina 199

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.13 PUERTO PARALELO: Un puerto paralelo es una interfaz entre un ordenador y un perifrico cuya principal caracterstica es que los bits de datos viajan juntos enviando un byte completo o ms a la vez. Es decir, se implementa un cable o una va fsica para cada bit de datos formando un bus. El cable paralelo es el conector fsico entre el puerto paralelo y el perifrico. En un puerto paralelo habr una serie de bits de control en vias aparte que irn en ambos sentidos por caminos distintos. En contraposicin al puerto paralelo est el Puerto serie, que enva los datos bit a bit por el mismo hilo. Y se usa normalmente para el puerto de impresora de un PC. IMPRESORA: Una impresora es un perifrico de computadora que permite producir una copia permanente de textos o grficos de documentos almacenados en formato electrnico, imprimindolos en medios fsicos, normalmente en papel o transparencias, utilizando cartuchos de tinta o tecnologa lser.(vase en la Fig.3.14)

Pgina 200

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.14 PUERTO RED O LAN: LAN es la abreviatura de Local Area Network (Red de rea Local o simplemente Red Local). Una red local es la interconexin de varios ordenadores y perifricos. Su extensin esta limitada fsicamente a un edificio o a un entorno de unos pocos kilmetros. Su aplicacin ms extendida es la interconexin de ordenadores personales y estaciones de trabajo en oficinas, fbricas, etc; para compartir recursos e intercambiar datos y aplicaciones. En definitiva, permite que dos o ms mquinas se comuniquen.(vase en la Fig.3.15)

Fig.3.15 PUERTO USB:


Pgina 201

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Este puerto ha supuesto un importante avance cuando se trata de conectar varios dispositivos externos, ya que mejora el nmero de ellos que es posible conectar de manera simultnea, y con una importante velocidad de transferencia. USB (Universal Serial Bus) permite conectar hasta 127 dispositivos y ya es un estndar en los ordenadores de ltima generacin, que incluyen al menos dos puertos USB 1.1, o puertos USB 2.0 en los ms modernos. SCANER: Fsicamente existen varios tipos de "scanner", cada uno con sus ventajas y sus inconvenientes: De sobremesa o planos: son los modelos ms apreciados por su buena relacin precio/prestaciones, aunque tambin son de los perifricos ms incmodos de ubicar debido a su gran tamao; un "scanner" para DIN-A4 plano puede ocupar casi 50x35 cm, ms que muchas impresoras, con el aadido de que casi todo el espacio por encima del mismo debe mantenerse vaco para poder abrir la tapa. De rodillo: unos modelos de aparicin relativamente moderna, se basan en un sistema muy similar al de los aparatos de fax: un rodillo de goma motorizado arrastra a la hoja, hacindola pasar por una rendija donde est situado el elemento capturado de imagen. Modelos especiales: aparte de los hbridos de rodillo y de mano, existen otros "scanner"s destinados a aplicaciones concretas; por ejemplo, los destinados a escanear exclusivamente fotos, negativos o diapositivas Recordemos tambin que modelos antiguos tambin se conectaban en puertos paralelos(vase en la Fig.3.16)

Pgina 202

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.16 Cmara o Web Cm Una cmara web o web cam es una pequea cmara digital conectada a una computadora, la cual puede capturar imgenes y transmitirlas a travs de Internet en directo, ya sea a una pgina web o a otra u otras computadoras de forma privada.(vase en la Fig.3.17)

Fig.3.17 Puerto serial o serie: Un puerto serie es una interfaz de comunicaciones entre ordenadores y perifricos en donde la informacin es transmitida bit a bit enviando un solo bit a la vez, en contraste con el puerto paralelo que enva varios bits a la vez. Entre el puerto serie y el puerto paralelo, existe la misma diferencia que entre una carretera tradicional de un slo carril por sentido y una autova con varios carriles por sentido.(vase en la Fig.3.18)

Pgina 203

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Fig.3.18 En este puerto tambin se pude decir que es el antecesor de el usb ya que a travs de el se conectan varios dispositivos. PUERTO VGA: Video Graphics Array (VGA) es una norma de visualizacin de grficos para ordenadores creada en 1987 por IBM. VGA pertenece a la familia de normas que comenz con la MDA. MONITOR: El monitor o pantalla de computadora, es un dispositivo de salida que, mediante una interfaz, muestra los resultados del procesamiento de una computadora.(vase en la Fig.3.19)

Fig.3.19 AUDIO LINE-OUT Y MICROFONO Se ubican en la placa de la tarjeta madre atravez de ellos se conectan los altavoces bocinas y micrfonos se emiten sonidos y se generan (micrfono)
Pgina 204

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

ALTAVOCES O BOCINAS: El altavoz, tambin conocido como bafle y, en Amrica Latina, como parlante, altoparlante o bocina, es un dispositivo utilizado para la reproduccin de sonido.(vase en la Fig.3.20)

Fig.3.20 Diademas o audfonos: Es un dispositivo electrnico que amplifica y cambia el sonido para permitir una mejor comunicacin. Los audfonos reciben el sonido a travs de un micrfono, que luego convierte las ondas sonoras en seales elctricas. El amplificador aumenta el volumen de las seales y luego enva el sonido al odo a travs de un altavoz.(vase en la Fig.3.21)

Fig.3.21 MICROFONO:
Pgina 205

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El micrfono es un transductor electroacstica. Su funcin es la de transformar (traducir) las vibraciones debidas a la presin acstica ejercida sobre su cpsula por las ondas sonoras en energa elctrica.(vase en la Fig.3.22)

Fig.3.22 PLOTTERS: Es una unidad de salida de informacin que permite obtener documentos en forma de dibujo. Existen plotters para diferentes tamaos mximos de hojas (A0, A1, A2, A3 y A4); para diferentes calidades de hojas de salida (bond, calco, acetato); para distintos espesores de lnea de dibujo (diferentes espesores de rapidgrafos), y para distintos colores de dibujo (distintos colores de tinta en los rapidgrafos). Existen dos tipos de estos dispositivos:

Flatbed plotter(trazador plano): Trazador de grficos que dibuja en hojas de papel que han sido colocadas en un tablero. El tamao del tablero determina el tamao mximo de las hojas que pueden utilizarse.

Drum plotter(Trazador de tambor): Trazador grfico que envuelve el papel alrededor de un tambor. El tambor gira para producir una direccin de trazado, el lpiz se mueve para proporcionar la otra.

DATA SHOW O CAONES: Es una unidad de salida de informacin. Es bsicamente una pantalla plana de cristal lquido, transparente e independiente. Acoplado a un retroproyector

Pgina 206

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

permite la proyeccin amplificada de la informacin existente en la pantalla del operador. Existe una variante tecnolgica del data show, conocida como el can de proyeccin, que puede ser catalogada como un sistema independiente de proyeccin mediante lentes, muy similar a un proyector de video. Los modelos ms recientes de caones utilizan LCDs.

3.2.2 Almacenamiento
Unidades de disquete. Por malo y anticuado que sea un ordenador, siempre dispone de al menos uno de estos aparatos. Su capacidad es totalmente insuficiente para las necesidades actuales, pero cuentan con la ventaja que les dan los muchos aos que llevan como estndar absoluto para almacenamiento porttil. ( vase en la Fig.3.23, Fig.3.24) Tamao 5,25 Tipo de disco SS/DD Capacidad 180 Kb Explicacin Una cara, doble densidad. Desfasado 5,25 DS/DD 360 Kb Dos caras, doble densidad. Desfasado 5,25 DS/HP 1,2 MB Dos caras, alta pero

densidad. Desfasado til 3,5 DS/DD 720 Kb Dos caras, doble densidad.
Pgina 207

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Desfasado muy comn

pero

3,5

DS/HD

1,44 MB

Dos

caras,

alta El

densidad. estndar actual.

Fig.3.23

Fig.3.24

Discos duros Son otro de los elementos habituales en los ordenadores, al menos desde los tiempos del 286. Un disco duro est compuesto de numerosos discos de material sensible a los campos magnticos, apilados unos sobre otros; en realidad se parece mucho a una pila de disquetes sin sus fundas y con el mecanismos de giro y el brazo lector incluido en la carcasa. Los discos duros han evolucionado mucho desde los modelos primitivos de 10 20 MB. Actualmente los tamaos son del orden de varios gigabytes, el tiempo
Pgina 208

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

medio de acceso es muy bajo (menos de 20 ms) y su velocidad de transferencia es tan alta que deben girar a ms de 5.000 rpm (revoluciones por minuto), lo que desgraciadamente hace que se calienten como demonios, por lo que no es ninguna tontera instalarles un ventilador para su refrigeracin. Una diferencia fundamental entre unos y otros discos duros es su interfaz de conexin. Antiguamente se usaban diversos tipos, como MFM, RLL o ESDI, aunque en la actualidad slo se emplean dos: IDE y SCSI.(vase en la Fig.3.25)

Fig.3.25

Dispositivos de almacenamiento pticos (CD y DVD): Los discos pticos estn formados por una lmina circular de plstico con una fina capa de material metlico reflectante, recubiertas a su vez por un barniz transparente para su proteccin del polvo. Un haz lser va leyendo microscpicos agujeros pits o espacios planos lanas, de forma que si el lser es reflejado o no, se interpretar de forma digital como un 1 o un 0. un sistema ptico con lentes encamina el haz luminoso, y lo enfoca como un punto en la capa del disco que almacena los datos. Podemos establecer una divisin en funcin de la longitud de onda del lser; de este modo tenemos el CD, el DVD y actualmente se estn lanzando dispositivos con tecnologa de Lser Azul. Esto es, disminuyendo la longitud de

Pgina 209

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

onda del lser, aumentamos la capacidad de escritura/lectura para el mismo espacio fsico en el disco. Su capacidad de almacenamiento llega hoy a unos 800 MB de informacin. Habitualmente se utiliza para almacenar datos o msica.(vase en la Fig.3.26)

Fig.3.26

3.2.3 Fuentes De Alimentacin


FUENTES DE ALMACENAMIENTO CONFIGURABLES: La serie MVP es la familia ms verstil de fuentes de alimentacin de potencia media que utiliza componentes magnticos de SMD y convertidos DC-DC internos, combinados con mdulos PFC, que pueden ser configurables desde 1 hasta 10 tensiones de salida con valores entre 2 y 60 V. tiene todas las homologaciones de seguridad necesarias y es un producto marcado CE. FUENTES DE ALIMENTACIN DE BAJA POTENCIA: Las series LP y Net de fuentes de alimentacin conmutadas de baja potencia, ofrecen una ptima combinacin de prestaciones, precio y fiabilidad, as como la ltima tecnologa.

Pgina 210

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Estos dispositivos ofrecen potencias entre 25 y 350 W y estn disponibles en una amplia variedad de configuraciones, tanto en salida nica como multisalida. FUENTES DE ALIMENTACION DE GRAN POTENCIA: ASTEC es lder mundial en fuentes de alimentacin para telefona, redes, fibra ptica y otras aplicaciones industriales donde se necesitan alimentadores, cargadores de batera enchufables en caliente y paralelables, para conseguir configuraciones N+1. La serie VS es una fuente de alimentacin modular, con diseo flexible, que ofrece de 1 a 12 salidas con potencias entre 1000 a 2500 W por unidad.

3.3 Ambientes De Servicios.


El negocio de proveer servicios de datos es mucho ms complejo que la forma en la que se dan los tradicionales servicios, los primeros requieren de nuevos conocimientos y modelos de negocio, que con frecuencia se termina involucrando o necesitando la colaboracin de terceras empresas. Por lo que se hace necesario que los operadores tradicionales transformen su negocio para ofrecer los servicios de datos con los niveles de servicio que el mercado exige, las principales exigencias reas de negocio que debe ser consideradas se detallan en los siguientes prrafos. 1. Desarrollo de nuevos mercados y productos: Para un operador tpico, la cadena de valor se han expandido muy particularmente en el rea de desarrollo de productos, los operadores deben integrar y establecer relaciones con muchos nuevos actores para generar contenido, portales o agregados al negocio como los ISP, as como construir las plataformas para el desarrollo de productos, mejorar la segmentacin y los clientes meta. El nfasis estar puesto en:
Desarrollo de contenido: Los operadores de las redes debern buscar

esquemas de compartir los ingresos y ofrecerle algn retorno financiero a los dueos del contenido.

Pgina 211

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La incorporacin de contenido: Muchos nuevos jugadores, as como las

mayores operadores de las redes, estn luchando por convertirse en los dominadores de esta parte del negocio.
Portales (multi-acceso). Disponibilidad

de

aplicaciones:

Los

operadores

deben

ofrecer

aplicaciones para uso de los clientes que les genere nuevos ingresos por servicios.
Mercadeo y desarrollo de nuevos productos: La segmentacin se vuelve

vital, como proveedores de servicios, se debe segmentar y enfocarse en grupos de clientes en particular y velar por sus necesidades especificas.

2. Adquisicin y Administracin de Clientes: La Administracin y la retencin de los clientes est aumentado en importancia cada vez ms, se busca mantener clientes leales; los CRM y los diferentes dispositivos que se utilizan como medios de acceso se han diversificado, pasando a ser elementos crticos en los negocios como herramientas para atraer y retenerlos. Esta porcin de la provisin de servicio en la cadena de valor ha llegado a ser muy competitiva, principalmente en los negocios de ventas al por mayor, que incorporan a nuevos proveedores de servicios que los ayudaran a enfocarse en grupos de clientes muy especficos. Los proveedores de servicios tendrn que aprender a diferenciar la experiencia del cliente a travs de su ciclo de vida completa, la ayuda de los dispositivos como los CRMS se estn volviendo extremadamente importantes conforme su funcionalidad se expande ms all de la simple voz y la mensajera, entrando a manejar conceptos de mayor conocimiento del cliente por medio de funciones de inteligencias de negocios que le permitan conocer con lujo de detalle el comportamiento de compra del consumidor. Para lograr esa fidelidad y conocimiento se debe estar enfocado en:
Nuevos clientes: Hay muchos nuevos competidores, apalancando

marcas, mejorando la distribucin, produciendo contenido, incorporando

Pgina 212

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

nuevas funcionalidades a los CRMS, habilitando nuevas aplicaciones, etc. Por otro lado los operadores de la red tambin se estn enfocando sobre marcas como diferenciadores.
Retencin de clientes: Retener los clientes de alta gama debe ser uno

de los focos principales para los proveedores de servicios que dependen de la red y que ya estn establecidos.
Administracin de los clientes y canales: Diferenciarse a travs de la

experiencia del cliente, reducir costos, mejorar el rendimiento, enfocarse en canales directos.
Dispositivos: poner mucha atencin al creciente uso de dispositivos

mviles como las PDA, de acceso inalmbrico diseado para ofrecer servicios de computacin y comunicacin especficos, va a ayudar considerablemente a posicionar la interfaz de acceso de los usuarios a los servicios. 3. Proveer y desarrollar servicios para la red: Los operadores de las redes deben buscar un uso eficiente de los activos, mejorar la calidad, el rendimiento, su utilizacin y el retorno financiero, las oportunidades de ventas al por mayor seguirn en incremento. Hay una oportunidad creciente en los servicios de valor agregado de las redes, los operadores deben de crear una capa de servicios dentro de su negocio para soportar las aplicaciones inalmbricas, tales como seguridad, ubicacin, servicios al por mayor, etc.,tales como: 1. Servicios principales de la red. 2. Servicios de valor agregado de la red: Una de las reas nuevas claves para los operadores de la red, como seguridad, hospedaje de servicios, administracin de dispositivos, respaldo de datos, etc 3. Operacin de la red. 4. Administracin del negocio: Los expertos consideran que los operadores, cada vez ms estarn volcando sus ojos hacia todos aquellos elementos que
Pgina 213

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

no son parte del negocio principal, buscando mejorar los costos, la eficiencia, la calidad y el rendimiento, las reas candidatas a tercerizar son: 1. Administracin: El ambiente cada vez ms complejo, hace que las empresas se enfocan cada vez ms en sus principales destrezas y fortalezas del negocio y complementar con la administracin de proveedores el resto de las actividades. 2. HR, SCM, ERP, etc.: Son potenciales actividades que no son fundamentales del negocio y son candidatos a ser sujetos a incrementar las relaciones con terceros que provean estos servicios.

3.3.1 Negocios
La globalizacin est cambiando el mundo y lo ha convertido en un ambiente sumamente competitivo, en el que no existen distancias ni fronteras y donde la informacin est al alcance de las manos. Esta situacin ha provocado una enorme presin sobre las organizaciones, que deben flexibilizarse y encontrar nuevos mecanismos para afrontar las presiones, para innovar y en general para sobrevivir. En este nuevo mundo, el outsourcing ha surgido como una herramienta que facilita la gestin empresarial y se ha convertido en un tema de actualidad. Sin embargo, ms que una moda, outsourcing es una forma eficaz para apoyar a las organizaciones y asegurar su supervivencia y tiene su principal razn de ser en tres imperativos que deben considerar las organizaciones hoy en da: Enfocarse en un negocio.
Asegurarse el acceso a la experiencia tcnica que es crtica para el

negocio.

Focalizarse en operaciones optimizadas, reduciendo y controlando los costos. En el caso de Tecnologa de Informacin, el impacto del outsourcing es

Pgina 214

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

enorme: Outsourcing es la principal fuente de crecimiento en el rea de Servicios de Tecnologa de Informacin (TI), y se ha convertido en un elemento central de las prcticas de negocios de las compaas actuales, sin importar el tamao. Empujados por la competencia de mercados, las empresas deben hacer un uso ms intensivo de TI y esto genera una mayor gama de oportunidades para el outsourcing. Pero esta tendencia requiere tambin que los CIO y dems lideres de las organizaciones aprendan a manejar esta herramienta como un mecanismo que permita alinear las funciones de TI con la estrategia de la organizacin. Los CIO deben reconocer los lmites de sus organizaciones para proveer los servicios estratgicos que requiere la organizacin e iniciar el desarrollo de las prcticas del outsourcing y sobre todo, manejar este mecanismo en forma efectiva. Una consecuencia del outsourcing es que ha creado un nuevo modelo de relacin cliente-proveedor, una relacin que busca la cooperacin intensa entre ambos, convirtiendo una relacin meramente comercial en un alianza estratgica para compartir el conocimiento. Qu es Outsourcing? Outsourcing es una herramienta de gestin que combina la correcta determinacin de la estrategia con las medidas adecuadas para llevarla a cabo de una manera operativamente eficaz. Esto significa que no se trata solo de eficacia operativa orientada hacia la estrategia organizacional. Una organizacin puede tratar de ser ms eficiente y eficaz y puede estar totalmente orientada al logro de sus objetivos. Esto implica normalmente un gran nmero de funciones que debe realizar, de las cuales, no todas estn relacionadas directamente al logro de los objetivos estratgicos. Algunas tareas solo son de apoyo a soporte. Las organizaciones deben reconocer que es posible realizar todas estas tareas
Pgina 215

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de forma eficiente y deben identificar cuales de sus funciones son crticas para el logro de los objetivos estratgicos y cuales son de apoyo. Una vez reconocidas y clasificadas las diversas funciones de esta forma, las organizaciones deben enfocarse en las tareas crticas, las funciones que establecen la diferencia, es decir, deben concentrarse en el NEGOCIO y deben considerar dar a terceros las funciones de soporte. Esto es Outsourcing.

3.3.2 Industria
La industrializacin de los Servicios de Tecnologa de Informacin va a redefinir el mercado en trminos de cmo las organizaciones evalan, compran y seleccionan los servicios, y de cmo los vendedores desarrollan, establecen precios e implementan los servicios. El aumento de la estandarizacin y la consecuente disminucin en la customizacin es un proceso inevitable y es el resultado del tiempo y la experiencia en cualquier industria. La industria est en un proceso de transicin y el impacto de este viraje ya se siente. Dentro del ambiente de TI (Tecnologa de Informacin), existe una estrategia doble, que incluye prcticas customizadas o estandarizadas. Los proveedores de outsourcing estn respondiendo a este llamado de la estandarizacin, para aprovechar las economas de escala, pero en forma simultnea deben soportar una gran base instalada de ambientes desarrollados a la medida. Aunque los servicios de TI estn en proceso de madurez, la madurez de la industria se ha incrementado en aspectos evidentes, como la forma en que los servicios son implementados y administrados. Para lograr esta estandarizacin, se requiere un enfoque hacia soluciones genricas y esto debe ser responsabilidad de los proveedores, que deben desarrollar, operar y administrar el resultado de estos genricos de TI. Las mtricas deben cambiar entonces, de la medida de capacidades tcnicas a la medida en el impacto en los negocios, es decir, en los acuerdos de niveles de servicio.

Pgina 216

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La industria de las telecomunicaciones y sus tendencias: Las empresas proveedoras de servicio de telecomunicaciones en estos tiempos tienen un reto mayor, reducir los costos y paralelamente desarrollar iniciativas para crecer el negocio en un mercado tradicional que se vuelve cada vez menos atractivo econmicamente hablando. El mercado de valores refleja una mejora muy considerable en el sector de los servicios de la industria de las telecomunicaciones, y de las empresas que ofrecen los servicios completos. Para mejorar los rendimientos los expertos recomiendan como una forma de lograr mayores ahorros en los costos, tomar las siguientes medidas: 1. Bajar los costos de operacin automatizando e integrando los procesos del negocio. 2. La utilizacin intensiva de los activos, por medio de la consolidacin de las operaciones, dotando a la empresa de una infraestructura escalable que le permita alcanzar los nuevos requerimientos rpidamente. 3. Hacer inversiones de capital eficientemente, como Gastos de Capital justo a Tiempo, analisis de costo/valor, una cadena de abastecimiento extendida y compras que les permita bajar los precios a mayores niveles. 4. Explotar las sinergias a travs de las operaciones, esto es, Centros de Servicios compartido 5. Administrar el riesgo y la incertidumbre, incorporando servicios

administrados o mercerizados a travs de la cadena de valor o dentro de segmentos especificos. Por el otro lado para crear nuevo valor a la empresa y generar ingresos adicionales recomiendan a las empresas:

Pgina 217

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

1. Apoyar los procesos e iniciativas de desarrollo de nuevos productos, que permita mejorar el tiempo de lanzamiento al mercado de nuevas fuentes de generacin de ingresos. 2. Administrar e incorporar alianzas en toda la cadena de valor. 3. Apoyar y soportar integraciones B2B (Negocio a Negocio) por medio de la adopcin de plataformas, sistemas y redes totalmente abiertas. 4. Proveer mecanismos para mantener un amplio conocimiento del mercado y de la empresa.

3.3.3 Comercio Electrnico


El comercio electrnico consiste en la compra, venta, marketing y suministro de informacin complementaria para productos o servicios a travs de redes informticas. La industria de la tecnologa de la informacin podra verlo como una aplicacin informtica dirigida a realizar transacciones comerciales. Una definicin alternativa la vera como la conduccin de comunicaciones de negocios comerciales y su direccin a travs de mtodos electrnicos como intercambio electrnico de datos y sistemas automticos de recoleccin de datos. El comercio electrnico tambin incluye la transferencia de informacin entre empresas. Desarrollo histrico El significado del trmino comercio electrnico ha cambiado a lo largo del tiempo. Originalmente, comercio electrnico significaba la facilitacin de transacciones comerciales electrnicamente, normalmente utilizando tecnologa como la Electronic Data Interchange (EDI, presentada finales de los aos 70) para enviar electrnicamente documentos como pedidos de compra o facturas. Ms tarde paso a incluir actividades ms precisamente denominadas Comercio en la red. La compra de bienes y servicios a travs de la World
Pgina 218

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Wide Web va servidores seguros (vase HTTPS, un protocolo de servidor especial que encripta la realizacin confidencial de pedidos para la proteccin de los consumidores y los datos de la organizacin) con tarjetas de compra electrnica y con servicios de pago electrnico como autorizaciones para tarjeta de crdito. Factores claves del xito en el comercio electrnico

Varios factores han tenido un importante papel en el xito de las empresas de comercio electrnico. Entre ellos se encuentran:

1. Proporcionar valor al cliente. Los vendedores pueden conseguirlo ofreciendo un producto o una lnea de producto que atraiga clientes potenciales a un precio competitivo al igual que suceden en un entorno no electrnico.

2. Proporcionar servicio y ejecucin. Ofrecimiento de una experiencia de compra amigable, interactiva tal como se podra alcanzar en una situacin cara a cara. 3. Proporcionar una pgina Web atractiva. El uso de colores, grficos, animacin, fotografas, tipografas y espacio en blanco puede aumentar el xito en este sentido 4. Proporcionar un incentivo para los consumidores para comprar y devolver. Las promociones de ventas pueden incluir cupones, ofertas especiales y descuentos. Las Webs unidas por links y los programas de publicidad pueden ayudar en este aspecto. 5. Proporcionar atencin personal. Webs personalizadas, sugerencias de compra y ofertas especiales personalizadas pueden allanar el camino de sustituir el contacto personal que se puede encontrar en un punto de venta tradicional.
Pgina 219

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

6. Proporcionar un sentido de comunidad. Las reas de chats, foros, registros como cliente, esquemas de fidelizacin y programas de afinidad puede ayudar. 7. Proporcionar confianza y seguridad. Servidores paralelos, redundancia de hardware, tecnologa de seguridad en averas, encriptamiento de la informacin y cortafuegos pueden ampliar estos requisitos. 8. Proporcionar una visin de 360 grados de la relacin con el consumidor, definida como la seguridad de que todos los empleados, proveedores y socios tienen una visin global e idntica del consumidor. Sin embargo, los consumidores pueden no apreciar la experiencia de gran hermano. 9. Poseer la experiencia total del consumidor. Esto se consigue tratando con el consumidor como parte de una gran experiencia, lo que hace ver como sinnimo de la marca 10. Optimizado los procesos de negocio, posiblemente a travs de tecnologas de reingeniera de la informacin. 11. Dejando que los consumidores se ayuden as mismos. Proporcionando sistemas de autoayuda sin asistencia puede ayudar en este sentido. 12. Ayudar a los consumidores a hacer el trabajo de consumir. Los vendedores pueden proporcionar esta ayuda ampliando la informacin comparativa y las bsquedas de producto. La provisin de informacin de componentes y comentarios de seguridad e higiene puede ayudar a los minoristas a definir el trabajo del comprador. 13. Construir un modelo de negocios slido. Si este factor clave hubiera aparecido en los libros de texto en 2000 muchas compaas punto com no habran quebrado. 14. Crear una cadena de valor aadido en la que uno se orienta a un nmero limitado de competencias claves. (Las tiendas electrnicas pueden presentarse bien como especialistas o como generalistas si se programan correctamente).

Pgina 220

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

15. Operar en o cerca del lmite de la tecnologa y permanecer all mientras la tecnologa sigue cambiando (pero recordando que los principios fundamentales del comercio se mantienen indiferentes a la tecnologa). 16. Construir una organizacin con suficiente agilidad y sistemas de alerta para responder rpidamente a los cambios en el entorno econmico, social y fsico. Problemas del comercio electrnico Incluso si el proveedor de productos en comercio electrnico sigue rigurosamente estos diecisis factores clave para disear una estrategia ejemplar de comercio electrnico, los problemas pueden aparecer igualmente. Las causas de dichos problemas suelen ser: 1. No comprensin de los clientes, el por qu compran y cmo compran. Incluso un producto con una proposicin slida de valor puede fallar si los fabricantes y distribuidores no entienden los hbitos, expectativas y motivaciones de los consumidores. El comercio electrnico podra llegar a mitigar este problema potencial con una investigacin de marketing preactiva y bien orientada tal como hacen los detallistas tradicionales. 2. No considerar el entorno competitivo. Uno puede tener la capacidad de construir un buen modelo de negocios de librera electrnica pero no tener el deseo de competir con Amazon.com. 3. No capacidad de predecir la reaccin del entorno. Qu harn los competidores? Presentarn nuevas marcas o pginas Web competidoras? Complementarn sus ofertas de servicio? Tratarn de sabotear el portal de la competencia? se desatar una guerra de precios? Qu har el estado? Una buena investigacin de la competencia, fabricantes y mercados puede mitigar las consecuencias de esto, tal y como sucede en el comercio no electrnico. 4. Sobreestimar nuestros recursos puede el personal, hardware, software, y nuestros procesos llevar a cabo la estrategia propuesta? Han fallado los
Pgina 221

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

detallistas en desarrollar las capacidaes de los empleados y directivos? Estos puntos pueden motivar la planificacin de recursos y la formacin de los empleados.

UNIDAD IV. MICROCONTROLADORES


Objetivo: Conocer el origen, evolucin, estado actual y aplicaciones de los microcontroladores.
4.1 Arquitectura

La Evolucin del Microprocesador El microprocesador es un producto de la computadora y la tecnologa semiconductora. Su desarrollo se eslabona desde la mitad de los aos 50's; estas tecnologas se fusionaron a principios de los aos 70`'s, produciendo el llamado microprocesador. La computadora digital hace clculos bajo el control de un programa. La manera general en que los clculos se han hecho es llamada la arquitectura de la computadora digital. As mismo la historia de circuitos de estado slido nos ayuda tambin, porque el microprocesador es un circuito con transistores o microcircuito LSI (grande escala de integracin), para ser ms preciso. El mapa de la figura, mostrada al final de esta seccin, muestra los sucesos importantes de stas dos tecnologas que se desarrollaron en las ltimas cinco dcadas. Las dos tecnologas iniciaron su desarrollo desde la segunda guerra mundial; en este tiempo los cientficos desarrollaron computadoras especialmente para uso militar. Despus de la guerra, a mediados del ao de 1940 la computadora digital fue desarrollada para propsitos cientficos y civiles. La tecnologa de circuitos electrnicos avanz y los cientficos hicieron grandes progresos en el diseo de dispositivos fsicos de Estado Slido. En 1948 en los laboratorios Bell crearon el Transistor.

Pgina 222

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

En los aos 50's, aparecen las primeras computadoras digitales de propsito general. stas usaban tubos al vaco (bulbos) como componentes electrnicos activos. Tarjetas o mdulos de tubos al vaco fueron usados para construir circuitos lgicos bsicos tales como compuertas lgicas y flip-flops (Celda donde se almacena un bit). Ensamblando compuertas y flip-flops en mdulos, los cientficos construyeron la computadora ( la lgica de control, circuitos de memoria, etc.). Los bulbos tambin formaron parte de la construccin de mquinas para la comunicacin con las computadoras. Para el estudio de los circuitos digitales, en la construccin de un circuito sumador simple se requiere de algunas compuertas lgicas. La construccin de una computadora digital requiere de muchos circuitos o dispositivos electrnicos. El principal paso tomado en la computadora fue hacer que el dato fuera almacenado en memoria como una forma de palabra digital. La idea de almacenar programas fue muy importante. La tecnologa de los circuitos de estado slido evolucion en la dcada de los aos 50's. El uso del material silicio de bajo costo y con mtodos de produccin masiva, hicieron al transistor ser el ms usado para el diseo de circuitos. Por lo tanto el diseo de la computadora digital fue un gran avance del cambio para remplazar al tubo al vaco (bulbo) por el transistor a finales de los aos 50's. A principios de los aos 60's, el arte de la construccin de computadoras de estado slido se increment y surgieron las tecnologas en circuitos digitales como: RTL (Lgica Transistor Resistor), DTL (Lgica Transistor Diodo), TTL (Lgica Transistor Transistor), ECL (Lgica Complementada Emisor). A mediados de los aos 60's se producen las familias de lgica digital, dispositivos en escala SSI y MSI que corresponden a pequea y mediana escala de integracin de componentes en los circuitos de fabricacin. A finales de los aos 60's y principios de los aos 70's surgieron los LSI (gran escala de integracin). La tecnologa LSI fue haciendo posible ms y ms circuitos digitales en un circuito integrado. Pero pocos circuitos LSI fueron producidos, los dispositivos de memoria fueron un buen ejemplo.
Pgina 223

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Las primeras calculadoras electrnicas requeran de 75 a 100 circuitos integrados. Despus se dio un paso importante en la reduccin de la arquitectura de la computadora a un circuito integrado simple, resultando un circuito que fue llamado el microprocesador. El primer microprocesador fue el Intel 4004, producido en 1971. Se desarroll originalmente para una calculadora, y resultaba revolucionario para su poca. Contena 2.300 transistores en un microprocesador de 4 bits que slo poda realizar 60.000 operaciones por segundo. El primer microprocesador de 8 bits fue el Intel 8008, desarrollado en 1979 para su empleo en terminales informticos. El Intel 8008 contena 3.300 transistores. El primer microprocesador realmente diseado para uso general, desarrollado en 1974, fue el Intel 8080 de 8 bits, que contena 4.500 transistores y poda ejecutar 200.000 instrucciones por segundo. Los microprocesadores modernos tienen mayor capacidad y velocidad. Entre ellos figuran el Intel Pentium Pro, con 5,5 millones de transistores; el UltraSparc-II, de Sun Microsystems, que contiene 5,4 millones de transistores; el PowerPC 620, desarrollado conjuntamente por Apple, IBM y Motorola, con 7 millones de transistores, y el Alpha 21164A, de Digital Equipment Corporation, con 9,3 millones de transistores.
[]

Breve Historia de los Microprocesadores

Figura 4.1

El pionero de los actuales microprocesadores el 4004 de Intel. Figura 4.1

Pgina 224

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.2

Imagen de un Intel 80286, mejor conocido como 286. Figura 4.2

Figura 4.3

Imagen de un Intel 80486, conocido tambin como 486SX de 33Mhz. Figura 4.3

Figura 4.4

La parte de posterior de un Pentium Pro. Este chip en particular es uno de 200MHz, con 256KB de cache L2. Figura 4.4

Pgina 225

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.5

Un procesador Pentium II, se puede observar su estilo de zocket diferente. Figura 4.5

Figura 4.6

Imagen de un procesador Celeron "Coppermine 128" 600 MHz. Figura 4.6

Figura 4.7

Imagen de un procesador Pentium III de Intel. Figura 4.7

1971: Microprocesador 4004

Pgina 226

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El 4004 fue el primer microprocesador de Intel. Este descubrimiento impuls la calculadora de Busicom y paviment la manera para integrar inteligencia en objetos inanimados as como la computadora personal. 1972: Microprocesador 8008 Codificado inicialmente como 1201, fue pedido a Intel por Computer Terminal Corporation para usarlo en su terminal programable Datapoint 2200, pero debido a que Intel termin el proyecto tarde y a que no cumpla con la expectativas de Computer Terminal Corporation, finalmente no fue usado en el Datapoint 2200. Posteriormente Computer Terminal Corporation e Intel acordaron que el i8008 pudiera ser vendido a otros clientes. 1974: Microprocesador 8080 Los 8080 se convirtieron en los cerebros de la primera computadora personal la Altair 8800 de MITS, segn se alega, nombrada en base a un destino de la Nave Espacial "Starship" del programa de televisin Viaje a las Estrellas, y el IMSAI 8080, formando la base para las mquinas que corran el sistema operativo CP/M. Los fanticos de las computadoras podan comprar un equipo Altair por un precio (en aquel momento) de $395. En un periodo de pocos meses, vendi decenas de miles de estas computadoras personales. 1978: Microprocesador 8086-8088 Una venta realizada por Intel a la nueva divisin de computadoras personales de IBM, hizo que los cerebros de IBM dieran un gran golpe comercial con el nuevo producto para el 8088--el IBM PC. El xito del 8088's propuls a Intel en la lista de las 500 mejores compaas de la prestigiosa revista Fortune, y la revista nombr la compaa como uno de "los Triunfos Comerciales de los Sesentas." 1982: Microprocesador 286 El 286, tambin conocido como el 80286, era el primer procesador de Intel que podra ejecutar todo el software escrito para su predecesor. Esta compatibilidad del software sigue siendo un sello de la familia de Intel de microprocesadores.
Pgina 227

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Luego de 6 aos de su introduccin, haba un estimado de 15 millones de 286 basados en computadoras personales instalados alrededor del mundo. 1985: el Microprocesador Intel 386(TM) El Intel 386TM microprocesador ofreci 275,000 transistores--ms de 100 veces tantos como en el original 4004. El 386 aadi una arquitectura de 32 bits, posea capacidad "multi-tarea", significando esto, que podra ejecutar mltiples programas al mismo tiempo y una unidad de traslacin de pginas, lo que hizo mucho ms sencillo implementar sistemas operativos que emplearan memoria virtual. 1989: El DX CPU Microprocesador Intel 486(TM) La generacin 486TM realmente signific que el usuario contaba con una computadora con muchas opciones avanzadas, entre ellas, un conjunto de instrucciones optimizado, una unidad de coma flotante y un cach unificado integrados en el propio circuito integrado del microprocesador y una unidad de interfaz de bus mejorada. Estas mejoras hacen que los i486 sean el doble de rpidos que un i386 e i387 a la misma frecuencia de reloj. El procesador Intel 486TM fue el primero en ofrecer un coprocesador matemtico, el cual acelera las tareas del micro, porque ofrece la ventaja de que las operaciones matemticas complejas son realizadas (por el co-procesador) de manera independiente al funcionamiento del procesador central (CPU). 1993: Procesador de Pentium El procesador de Pentium posea una arquitectura capaz de ejecutar dos operaciones a la vez gracias a sus dos pipeline de datos de 32bits cada uno, uno equivalente al 486 DX(u) y el otro equivalente a 486SX(u). Adems, posea un bus de datos de 64 bits, permitiendo un acceso a memoria 64 bits (aunque el procesador segua manteniendo compatibilidad de 32 bits para las operaciones internas y los registros tambin eran de 32 bits). Las versiones que incluan instrucciones MMX no slo brindaban al usuario un mejor manejo de aplicaciones multimedia, como por ejemplo, la lectura de pelculas en DVD
Pgina 228

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

sino que se ofrecan en velocidades de hasta 233 MHz, incluyendo una versin de 200 MHz y la ms bsica proporcionaba unos 166 MHz de reloj. El nombre Pentium, se mencion en las historietas y en charlas de la televisin a diario, en realidad se volvi una palabra muy popular poco despus de su introduccin. 1995: Procesador Pentium Profesional Lanzado al mercado para el otoo de 1995 el procesador Pentium Pro se disea con una arquitectura de 32-bit, su uso en servidores, los programas y aplicaciones para estaciones de trabajo (redes) impulsan rpidamente su integracin en las computadoras. El rendimiento del cdigo de 32 bits era excelente, pero el Pentium Pro a menudo iba ms despacio que un Pentium cuando ejecutaba cdigo o sistemas operativos de 16 bits. Cada procesador Pentium Pro estaba compuesto por unos 5.5 millones de transistores. 1997: Procesador Pentium II El procesador de 7.5 milln-transistores Pentium II, se busca entre los cambios fundamentales con respecto a su predecesor, mejorar el rendimiento en la ejecucin de cdigo de 16 bits, aadir el conjunto de instrucciones MMX y eliminar la memoria cach de segundo nivel del ncleo del procesador, colocndola en una tarjeta de circuito impreso junto a ste. Gracias al nuevo diseo de este procesador, los usuarios de PC pueden capturar, pueden revisar y pueden compartir fotografas digitales con amigos y familia va Internet; revisar y agregar texto, msica y otros; con una lnea telefnica, el enviar video a travs de las lneas normales del telfono mediante el Internet se convierte en algo cotidiano. 1998: El Procesador Pentium II Xeon (TM) Los procesadores Pentium II Xeon TM se disean para cumplir con los requisitos de desempeo en computadoras de medio-rango, servidores ms poderosos y estaciones de trabajo (Workstation). Consistente con la estrategia de Intel para disear productos de procesadores con el objetivo de llenar
Pgina 229

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

segmentos de los mercados especficos, el procesador Pentium II Xeon TM ofrece innovaciones tcnicas diseadas para las estaciones de trabajo (Workstation) y servidores que utilizan aplicaciones comerciales exigentes como servicios de Internet, almacenaje de datos corporativo, creaciones digitales y otros. Pueden configurarse sistemas basados en el procesador para integrar de cuatro o ocho procesadores y ms all de este nmero. 1999: El Procesador Celeron (TM) Continuando la estrategia de Intel, en el desarrollo de procesadores para los segmentos del mercado especficos, el procesador Intel Celeron TM es el nombre que lleva la lnea de procesadores de bajo costo de Intel. El objetivo era poder, mediante esta segunda marca, penetrar en los mercados impedidos a los Pentium, de mayor rendimiento y precio. Se disea para el aadir valor al segmento del mercado de las PC (Computadoras Personales). Proporciona a los consumidores una gran actuacin a un valor excepcional (bajo costo), y entrega un desempeo destacado para usos como juegos y el software educativo. 1999: Procesador Pentium III El Pentium III procesador ofrece 70 nuevas instrucciones (Internet Streaming, las extensiones de SIMD) las cuales refuerzan dramticamente el desempeo con imgenes avanzadas, 3-D, aadiendo una mejor calidad de audio, video y desempeo en aplicaciones de reconocimiento de voz. Fue diseado para reforzar el rea del desempeo en el Internet, le permite a los usuarios hacer cosas, tales como, navegar a travs de paginas pesadas (llenas de graficas) como las de los museos online, tiendas virtuales y transmitir archivos video de alto-calidad. El procesador incorpora 9.5 millones de transistores, y se introdujo usando en l la tecnologa 0.25-micron. 1999: El Procesador Pentium III Xeon (TM) El procesador Pentium III de Xeon TM amplia las fortalezas de Intel en cuanto a las estaciones de trabajo (Workstation) y segmentos de mercado de servidor
Pgina 230

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

y aade una actuacin mejorada en las aplicaciones del e-comercio y la informtica comercial avanzada. Los procesadores incorporan tecnologa que refuerzan los multimedios y las aplicaciones de video. La tecnologa del procesador III Xeon TM acelera la transmisin de informacin a travs del bus del sistema al procesador, mejorando la actuacin significativamente. Se disea pensando principalmente en los sistemas con configuraciones de multiprocesador.

4.1.1 Terminales

Arquitectura externa del microprocesador 8088

Pgina 231

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.8

Bus de direccin, datos y control. Figura 4.8 En el 8088 el bus de direccin, datos y control se divide en tres partes: a. b. c. Los 8 bits menos significativos de direccin/datos (AD0 AD7) Los 8 bits centrales (A8 A15) No multiplexados. Los 4 bits ms significativos (A16 A19) Multiplexados entre direcciones

Multiplexados entre direcciones y datos.

y seales de control. Se puede trabajar con los buses multiplexados o demultiplexados. AD7 AD0, bus de direccin y datos: Estn multiplexadas entre buses de direcciones (T1) y de datos (T2, T3, Tw, T4) y contienen los 8 bits menos significativos: Permanecen en estado de alta impedancia durante el reconocimiento de interrupcin y de solicitud de bus.

Pgina 232

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

A15 A8, bus de direccin: Tiene la mitad superior de las direcciones (T1, T2, T3, Tw, T4), no estn multiplexadas y permanecen en alta impedancia durante el reconocimiento de interrupcin y de solicitud de bus. A19 A16 / S6 S3, bus de direccin y de estatus: Estn multiplexadas entre los 4 bits ms significativos de direcciones (T1) y status (T2, T3, Tw, T4) en el caso I/O durante T1 permanecen en cero. S6 siempre est en 0. S5 indica la condicin de la bandera de interrupcin IF. S3 y S4 indican a cul segmento se est accediendo. RD, lectura: Cuando est en 0 (T2, T3, Tw) indica que el bus de datos puede recibir datos. Se garantiza que durante T2 estar en alto hasta que el bus del 8088 quede en alta impedancia. Permanece en alta impedancia durante el reconocimiento de solicitud de bus. READY, listo. Es entrada y cuando la activamos genera pulsos de reloj (Tw) para prolongar el ciclo de bus INTR, peticin de interrupcin: Entrada que se muestra en el ltimo ciclo de reloj de cada interrupcin para determinar si el 8088 debe entrar en una operacin de reconocimiento de interrupcin. Puede ser enmascarada. Se sincroniza y es activa en alto. TEST, prueba: Es una entrada que la usa la instruccin WAIT. Si TEST=0, WAIT funciona como una NOP. Si TEST=1, WAIT espera a que TEST pase a 0. Se usa para sincronizar con dispositivos externos.

Pgina 233

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

NMI, interrupcin no enmascarable: Es una entrada activa por flanco positivo que causa una interrupcin del tipo 2. La interrupcin se cumple al final de la instruccin actual y est internamente sincronizada. RESET, restauracin: Para restauracin debe permanecer en alto por lo menos 4 ciclos de reloj y se activa en el flanco negativo. CLK, reloj: Entrada de reloj que debe tener un ciclo de trabajo de 33%. VCC, alimentacin: 5V 10%, referencia para la lgica digital. GND, tierra: 0V, referencia para la lgica digital. MN/MX, modo mnimo, modo mximo. El 86/88 va a poder trabajar en uno de dos modos posibles definidos como: Modo Mximo y Modo Mnimo. El modo a seleccionar depender de la aplicacin concreta que se vaya a implementar. Modo Mnimo: Aplicaciones simples para pequeos sistemas; se comporta similar a un Microprocesador de 8 bit pero de 16 internamente. Modo Mximo: Aplicaciones ms complejas, genera casi todas las seales compatibles para la implementacin de la norma Multibus. Permite soportar varios procesadores en el Bus. El CPU no puede generar directamente las seales de control del sistema y se auxilia del controlador de Buses 8288. Existe un terminal denominado MN/MX que selecciona el modo de trabajo. Si MN/MX = 1 => Modo Mximo. Si MN/MX = 0 => Modo Mnimo.
Pgina 234

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

IO/M, lnea de estados de memoria o E/S: Indica si la direccin es de memoria o de I/O. Permanece en alta impedancia durante un reconocimiento de solicitud de bus. WR, escritura. Es una salida que indica que el 8088 va a escribir a memoria o a E/S. Se activa (bajo) durante T2, T3 y Tw de un ciclo de escritura e indica que el bus contiene datos vlidos. Permanece en alta impedancia durante un reconocimiento de solicitud de bus. INTA, reconocimiento de interrupcin. Salida que se activa (bajo) durante T2, T3 y Tw de cada ciclo de reconocimiento de interrupcin. Es una respuesta a la entrada INTR y se usa como pulso de lectura en un ciclo de reconocimiento de interrupcin. ALE, habilitacin del cerrojo de direccin: Salida que indica (estando en alto durante la parte baja del reloj de T1) que en el bus hay una direccin vlida. ALE nunca queda en estado de alta impedancia. DT/R, transmite/recibe datos: Indica que el bus de datos transmite datos (DT/R=1) o los recibe (DT/R=0) Esta seal es necesaria para habilitar los circuitos de acoplamiento del bus de datos externo. Permanece en alta impedancia durante un reconocimiento de solicitud de bus. DEN, habilitacin de datos. Salida que se emplea para habilitar los circuitos de acoplamiento del bus de datos externo. Se activa en bajo durante cada acceso a memoria y ciclos de inte-rrupcin.
Pgina 235

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Para lectura o ciclos INTA, se activa desde la mitad de T2 hasta la mitad de T4. Para ciclos de escritura, se activa desde el comienzo de T2 hasta el medio de T4. Permanece en alta impedancia durante un reconocimiento de solicitud de bus. HOLD, solicitud de acceso directo a memoria. Si HOLD=1, el 8088 deja de ejecutar el programa actual y lleva su bus de direcciones, datos y control a alta impedancia. Si HOLD=0, el 8088 ejecuta los programas normalmente. Requiere sincronizacin externa. HLDA, respuesta a la peticin de acceso directo a memoria: Salida que indica (HLDA=1) que el 8088 ha concedido los buses (es la respuesta del 8088 a la entrada HOLD) SSO, lnea de estatus: Esta seal de salida se combina con IO/M y DT/R para decodificar la funcin del ciclo de bus actual. El ciclo de bus consiste de al menos 4 ciclos de reloj, los cuales se denominan T1, T2, T3 y T4, como se muestra en la siguiente Figura 4.9

Pgina 236

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

[Escrib

Figura 4.9

Las direcciones son emitidas durante T1 y la transferencia de datos ocurre entre T3 y T4. En T1: Se envan las direcciones y se proporcionan las seales de control ALE, DT/ R y IO/M. En T2: Se proporcionan las seales DEN, RD (lectura) o WR (escritura) En el caso de escritura aparecen los datos que se van a escribir en el bus de datos. Al final de T2 se muestra la seal READY.
Pgina 237

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

En T3: Se da tiempo a la memoria para acceder a los datos. En el caso de que sea un ciclo de lectura el bus de datos se muestra al final de T3. En T4: Se desactivan todas las seales de control para prepararse para el siguiente ciclo de bus. En este momento, el flanco positivo de WR transfiere datos a la memoria, los cuales se activan y escriben cuando la seal WR retorna a 1. Ciclo de escritura Empieza con la aparicin de la seal ALE y la emisin de las direcciones. La seal IO/M se suministra para indicar si esa memoria o a I/O. En T2: Despus de la emisin de las direcciones, el 8088 emite el dato a escribir en la locacin direccionada. Este dato permanece vlido al menos hasta la mitad de T4. Durante T2, T3 y Tw, el 8088 enva la seal de control de escritura (WR) que se pone en estado activo en el comienzo de T2. Los datos se escriben en la memoria en el flanco positivo de WR. La seal de RD en la lectura est un poco ms retrasada que la de WR en la escritura para dar tiempo a que el bus quede en alta impedancia. Ciclo de lectura Comienza en T1 con la aparicin de la seal ALE, cuyo flanco negativo se usa para acerrojar las direcciones, que son vlidas en el bus de direcciones/datos (AD0 AD7). Las lneas de direcciones A8 A15 no necesitan ser acerrojadas ya que permanecen vlidas en todo el ciclo de bus.
Pgina 238

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

De T1 a T4, la seal IO/M indica si es una operacin a memoria o a un dispositivo de E/S. En T2 las direcciones se sacan del bus de direcciones/datos y el bus se pone en alta impedancia (AD0 AD7). La seal de control de lectura (RD) aparece en T2 y causa que el dispositivo direccionado habilite su bus de datos. Un tiempo despus, debe estar disponible el dato vlido sobre el bus. Cuando el 8088 retorna la seal RD a un nivel alto, el dispositivo direccionado pondr en alta impedancia su salida de datos. Circuito Para Generar El Pulso De Reloj. Adems del circuito para la sealizacin del P que propone el fabricante (8284A), que se utiliza para RELOJ y RESET, podemos utilizar otros circuitos, uno de ellos, se propone a continuacin: Tomamos de la hoja de especificaciones del microprocesador la frecuencia de operacin y el porcentaje del ciclo de trabajo. Para bajas velocidades, podemos tomar 50% como ciclo de trabajo; como la oscilacin la determina la red RC, proponemos el valor de C y calculamos R, ajustando el valor obtenido al valor comercial prximo. Por lo general, usamos inversores para este ejemplo de clculo: tomamos una frecuencia igual a 2MHz, como inversor un schmitt trigger MC74HC14AC y como capacitor uno cermico de 0.001F. El circuito a utilizar se muestra a continuacin:

Pgina 239

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.10

Para el clculo de la resistencia R, se consideran los datos anteriores y los correspondientes al Schmitt trigger, los cuales se obtuvieron de las tablas de referencia y son: VT+ = 2.7V VCC = 4.5V VT- = 1.8V La frmula de la frecuencia est dada por:

Sustituyendo valores:

Despejando a R y sustituyendo los valores de f y C:

Circuito Para Generar La Seal De RESET.

Pgina 240

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El P requiere que el tiempo de duracin mnimo en esta terminal sea 50 s. Por lo tanto, podemos utilizar el circuito integrado 8284A de la familia Intel que genera el pulso de reloj y el de RESET o bien, hacerlo utilizando un inversor y una red RC que garantice el tiempo de duracin de 50 s. Debemos disear un circuito RC para garantizar al menos 50 s de duracin con un disparador Schmitt trigger (inversor) considerando los parmetros VT+ y VT- de dicho inversor. En el diseo ocuparemos las frmulas del efecto transitorio, considerando los datos del Schmitt trigger como: VT- = 1.8V = VC y VCC = 5V. Para la red RC con disparador Schmitt, se tiene el siguiente desarrollo:

Proponemos C = 0.1 F y despejando a R:

El circuito para restauracin es:

Pgina 241

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.11

Circuito Para Demltiplexar El Bus De Direccin Del Bus De Datos Y De Control. Demultiplexaje de canales. El canal de direccin y de datos del 8086/8088 est multiplexado para reducir el nmero de terminales requeridas en el circuito integrado. Desgraciadamente, esto aumenta el trabajo del diseador con la tarea de mltiplexar la informacin contenida en estas terminales. Por qu no dejar multiplexados los canales? La memoria y la E/S requieren que la direccin siga siendo vlida y establece un ciclo de lectura o escritura. Si los canales estn multiplexados hay cambios de direccin en la memoria y en la E/S lo que hace leer o escribir datos en las localidades errneas. Todos los sistemas de computadora tienen tres canales: 1) Un canal de direcciones que proporciona la direccin de memoria al nmero de puerto para la E/S; 2) un canal de datos que transfiere los datos entre el microprocesador y
Pgina 242

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

la memoria y la E/S en el sistema y 3) un canal de control que aplica seales de control en la memoria y E/S lo que hace leer o escribir datos en localidades errneas. Demultiplexaje del 8088. En la Figura siguiente se muestra el microprocesador 8088 y los componentes requeridos para demultiplexar sus canales. En este caso, se utilizan dos registros transparentes 74LS573 para demultiplexar las conexiones AD7-AD0 del canal de direcciones y datos en las terminales multiplexadas A19 y S6A16/S3. Estos registros, con multivibradores tipo D que son como alambres, cuando la seal de habilitacin (ALE) de direccin se vuelva un 1 lgico transfiere las entradas a las salidas. Despus de un corto tiempo, ALE regresa al 0 lgico, lo cual hace que los registros recuerden las entradas en el momento del cambio a un 0 lgico. En este caso, ~recuerden~ de A7-A0 en el registro inferior y a A19 hasta A16 en el registro superior. Esto produce un canal de direcciones independientes para las terminales A19 hasta A0 que permiten que el 8088 direccione 1MB de espacio de memoria. El hecho de que el canal de datos est separado permite conectarlo con cualquier dispositivo perifrico de 8 bits de memoria. En la Figura siguiente se ilustra un 8088 con los tres canales multiplexados: Direcciones (A19 hasta A0 y BHE), el de datos (D15 hasta D0) y el de control (IO/M, RD y WR) Demultiplexaje del 8086. El 8086 requiere canales separados de direcciones, datos y control. La diferencia principal es el nmero de terminales multiplexadas. En el 8088 slo estn multiplexadas AD7 hasta AD0, A19 y S6 hasta A16 y S3. En el caso del
Pgina 243

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

8086, las terminales multiplexadas incluyen AD15-AD0 y A19 y S6 hasta A16 y S3 BHE/S7. Hay que demultiplexar todas estas seales. Para el 8086, el circuito es casi idntico al de la Figura 4.12 siguiente excepto que se agregar un 74LS573 adicional para demultiplexar las terminales de direcciones/datos del canal AD15-AD8 y BHE/SE7, se agreg a la entrada del 74LS573 de la parte superior para seleccionar el banco alto en el sistema de memoria de 16 bits del 8086. Aqu la memoria y el sistema de E/S ven al 8086 como un dispositivo con un canal de direcciones o de 20 bits (A19-A0), un canal de datos de 16 bits (D15-D0) y un canal de control de tres lneas (IO/M, RD y WR)

Figura 4.12. El sistema acoplado.

Si hay ms de 10 cargas lgicas conectadas en cualquier terminal de un canal, hay que acoplar la totalidad del sistema 8086 o del 8088. Las terminales
Pgina 244

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

demultiplexadas ya estn acopladas con los registros transparentes 74LS573, que se han diseado para manejar los canales de alta capacitancia que se encuentran en los sistemas de microcomputadoras. Se han aumentado las corrientes de salida de los registros a fin de que se puedan manejar ms unidades de carga TTL; un 0 lgico de salida proporciona hasta 32mA de disipacin de corriente y una salida en 1 lgico proporciona hasta 5.2mA de corriente. Una vez que hemos demultiplexado el bus de direccin del de datos y control, podemos conectar bloques de RAM y/o PROM y puertos de E/S paralelo o tarjetas conteniendo varios puertos de E/S paralelos. Tambin podemos conectar puertos seriales, tal como se describi en el tema de memorias y E/S.
4.1.2 CPU.

Las caractersticas que un CPU tiene son: Memoria Unidad aritmtica lgica Unidad o procesador de control

Memoria Principal (Interna O Central). Se almacenan datos y programas, hay dos operaciones que se hacen en la memoria (lee y escribe) entonces se dice que es donde almacena, se lee y se escribe. Es un conjunto de clulas numeradas y dos registros especiales con los que realiza las transacciones.

Pgina 245

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El registro de direccin que indica el nmero de la clula afectada y el de intercambio que contiene la informacin leda o la que hay que escribir en la clula de cuestin. La memoria central o simplemente memoria (interna o principal) se utiliza para almacenar informacin. En general, la informacin almacenada en memoria puede ser de dos tipos: las instrucciones de un programa y los datos con los que se operan las instrucciones. Por ejemplo: Para que un programa se pueda ejecutar (correr, rodar, funcionar, ), debe ser situado en la memoria, en una operacin denominada carga (load) del programa. La memoria central de una computadora es una zona de almacenamiento organizada en centenares o millares de unidades de almacenamiento individual celdas. La unidad elemental de memoria se llama byte(octeto). Un byte tiene la capacidad de almacenar un carcter de informacin, y est formado por un conjunto de unidades ms pequeas de almacenamiento denominadas bits, que son dgitos binarios (0 1). Generalmente se acepta que un byte contiene ocho bits. Por consiguiente, si se desea almacenar la frase la computadora utilizara exactamente 23 bytes consecutivos de memoria. Obsrvese que adems de las letras, existen cuatro espacios en blanco y un punto (un espacio es un carcter que emplea tambin un byte). De modo similar, el nmero del pasaporte P57487891 ocupara 9 bytes. Estos datos se llaman alfanumricos y pueden constar de alfabeto, Dgitos o incluso caracteres especiales (smbolos: $, #,*, etc.). Mientras que cada carcter de un dato alfanumrico se almacena en un byte, la informacin numrica se almacena de un modo diferente. Los datos numricos ocupan 2,4 e incluso 8 bytes consecutivos, dependiendo del tipo de dato numrico.

Pgina 246

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Existen dos conceptos importantes asociados a cada byte o posicin de memoria: su direccin y contenido. Cada celda o byte tiene asociada una nica direccin que indica su posicin relativa en memoria mediante la cual se puede acceder a la posicin para almacenar o recuperar informacin. La informacin almacenada en una posicin de memoria es su contenido. El contenido de estas direcciones o posiciones de memoria se llaman palabras, de modo que existen palabras de 8, 16, 32, y 64 bits. Por consiguiente, si trabaja con una mquina de 32 bits, es decir, 32 dgitos, bien ceros o unos. Siempre que una nueva informacin se almacena en una posicin, se destruye (desaparece) cualquier informacin que en ella hubiera y no se puede recuperar. La direccin es permanente y nica, el contenido puede cambiar mientras se ejecuta un programa. La memoria central de una computadora puede tener desde unos centenares de millares de bytes hasta millones de bytes. Como el byte es una unidad elemental de almacenamiento, se utilizan mltiplos para definir el tamao de la memoria central: Kilo-byte (KB o Kb) igual a 1.024 bytes (210) prcticamente se toman 1.000 y Mega byte (MB o Mb) igual a 1.024 x 1.024 bytes (220) prcticamente se considera un 1.000.000. Las computadoras personales tipo PC tienen memorias centrales desde 512 640 k aunque es frecuentemente ver PCs con memorias de 1, 2, 4, 12, etc., Mb. Pasos que se hacen en la lectura: 1. Almacenar la direccin de la clula en la que se encuentra la informacin a leer datos se almacena en el registro de direccin.

Pgina 247

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

2. Cambiar el registro de intercambio la informacin contenida en la clula apuntada por el registro de direccin. 3. Transferir el contenido de registro de intercambio al registro de la CPU que corresponda. Pasos para la escritura: 1. Transferir el registro de intercambio la informacin a escribir. 2. Almacenar la segunda direccin de la clula receptora de la informacin en el registro de direccin. 3. Cargar el contenido de registro de intercambio en la clula apuntada por el registro de direccin. UAL (Unidad Aritmtica Lgica). La unidad aritmtica lgica opera los datos que recibe siguiendo las indicaciones por la unidad de control. Esta unidad puede realizar operaciones aritmticas lgicas, por ejemplo: el de realizar la suma, la forma en que realiza la operacin. 1. Se debe tener el cdigo de operacin que indique la operacin a efectuar en este caso el cdigo de suma. 2. Direccin de la clula en la que se encuentra almacenado el primer sumando. 3. Direccin del segundo sumando. 4. Direccin de la clula en la que se almacena el resultado.

Pgina 248

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Instrucciones para efectuar la suma. a) Cargar el primer operando en el acumulador. b) Sumar el segundo operando con el contenido del acumulador. c) Cargar el contenido del acumulador en la direccin del resultado. Unidad De Control (La Unidad Que Va Decidir Controlar). La unidad de control es el autntico cerebro que controla y coordina el funcionamiento de la computadora. A raz de la interpretacin de las instrucciones que integran el programa esta unidad genera el conjunto de rdenes elementales necesarias para que se realice la tarea necesitada. Pasos para la unidad de control. 1. Se extrae de la memoria principal la instruccin a ejecutar esa informacin es almacenada en el contador de instrucciones, la informacin que se almacena es la prxima instruccin a ejecutar en el registro de instruccin propiamente dicha. 2. Una vez conocido el cdigo de la operacin la unidad de control ya sabe que circuitos de la UAL deben de intervenir pueden establecerse las conexiones elctricas necesarias a travs del secuenciador. 3. Extrae de la memoria principal los datos necesarios para ejecutar la instruccin en proceso
4. Ordena la AUL que efecta las operaciones el resultado de este es

depositado en el acumulado de la AUL.

Pgina 249

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

5. Si la instruccin ha proporcionado nuevos datos estos son almacenados

en la memoria principal. 6. Incrementa en una unidad el contenido del contador de instrucciones a ejecutar. Unidades Perifricas Unidades de comunicacin Memorias auxiliares. Las unidades de comunicacin: Permiten el dialogo con el exterior que son las de entrada y salida ejemplo: teclado, monitor impresora, mouse. Las memorias auxiliares: Sirven para almacenar grandes volmenes de datos de forma permanente por ejemplo: Unidades de discos y cintas magnticas. La comunicacin entre los perifricos y la computadora se realizan atreves de los canales. Procesamiento de la CPU Una CPU procesa informacin almacenada en los bytes de la memoria. Esta informacin puede ser datos o instrucciones. Un dato es una representacin binaria de una letra, un nmero, o un color; mientras que una instruccin le dice a la CPU que hacer con ese dato, es decir si sumarlo, si restarlo, moverlo, etc. La CPU realiza tres operaciones bsicas con los datos: puede leerlos, procesarlos, y escribirlos en la memoria. Es decir que, la CPU necesita solo cuatro elementos para realizar dichas operaciones con los datos: Las instrucciones, un puntero a las instrucciones (Instruccin Pointer), algunos registros, y la unidad aritmtica lgica.
Pgina 250

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El Instruccin Pointer le indica a la CPU en qu lugar de la memoria necesita ser ubicada la instruccin. Los Registros son lugares de almacenamiento temporario ubicados en la CPU. Un registro contiene datos que esperan ser procesados por cualquier instruccin, o datos que ya han sido procesados, como por ejemplo, la suma o resta de algn nmero, etc. La unidad aritmtica lgica es una especie de calculadora que ejecuta funciones matemticas y lgicas dedicadas a las instrucciones. Por otro lado, la CPU contiene algunas partes adicionales que ayudan a dichos componentes principales a realizar el trabajo: Un buscador de instrucciones (fetch), que recoge las instrucciones de la RAM o un rea de memoria localizada en la CPU. Un decodificador de instrucciones, que toma la instruccin desde el buscador y la traslada hasta que la CPU la entienda. Luego determina cuales son los pasos necesarios para cumplir con dicha instruccin. La unidad de control, maneja y coordina todas las operaciones del chip. Este le permite saber a la unidad aritmtica lgica cuando debe calcular, al buscador cuando debe grabar una cifra, y al decodificador cuando trasladar la cifra dentro de una instruccin. Memoria El propsito del almacenamiento es guardar datos que la computadora no est usando. El almacenamiento tiene tres ventajas sobre la memoria: 1. Hay ms espacio en almacenamiento que en memoria. 2. El almacenamiento retiene su contenido cuando se apaga el computador.
Pgina 251

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

3. El almacenamiento es ms barato que la memoria. El medio de almacenamiento ms comn es el disco magntico. El dispositivo que contiene al disco se llama unidad de disco (drive). La mayora de las computadoras personales tienen un disco duro no removible. Adems usualmente hay una o dos unidades de disco flexible, las cuales le permiten usar discos flexibles removibles. El disco duro normalmente puede guardar muchos ms datos que un disco flexible y por eso se usa disco duro como el archivero principal de la computadora. Los discos flexibles se usan para cargar programas nuevos, o datos al disco duro, intercambiar datos con otros usuarios o hacer una copia de respaldo de los datos que estn en el disco duro. Una computadora puede leer y escribir informacin en un disco duro mucho ms rpido que en el disco flexible. La diferencia de velocidad se debe a que un disco duro est construido con materiales ms pesados, gira mucho ms rpido que un disco flexible y est sellado dentro de una cmara de aire, las partculas de polvo no pueden entrar en contacto con las cabezas. La memorizacin consiste en la capacidad de registrar sea una cadena de caracteres o de instrucciones (programa) y tanto volver a incorporarlo en determinado proceso como ejecutarlo bajo ciertas circunstancias. El computador dispone de varios dispositivos de memorizacin: La memoria ROM La memoria RAM Las memorias externas. Un aspecto importante de la

memorizacin es la capacidad de hacer ese registro en medios permanentes, bsicamente los llamados "archivos" grabados en disco. El acumulador Arquitectura De La Memoria (ROM)

Pgina 252

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La arquitectura (estructura) interna de un CI-ROM es muy compleja y no necesitamos conocer todos sus detalles. Sin embargo es constructivo observar un diagrama simplificado de la estructura interna. Existen cuatro partes bsicas: decodificador de renglones, arreglo de registros y buffer de salida. Arreglo de registros. El arreglo de registros almacena los datos que han sido programados en la ROM. Cada registro contiene un numero de celdas de memoria que es igual al tamao de la palabra. En este caso, cada registro almacena una palabra de 8 bits. Los registros se disponen en un arreglo de matriz< cuadrada que es comn a muchos circuitos de semiconductor. Podemos especificar la posicin de cada registro como una ubicada en un regln y una columna especficos. Las 8 salidas de datos de cada registro se conectan a un canal de datos interno que corre atreves de todo el circuito. Cada registro tiene dos entradas de habilitacin (E); ambas tienen que ser altas a fin de que los datos del registro sean colocados en el canal. Decodificadores de direcciones. El cdigo de direccin aplicado A3, A2, A1, A0, determina que registro ser habilitado para colocar su palabra de datos en 8 bits en el canal. Los bits de direccin A1, A0, se alimentan de un decodificador uno de 4 que activa una lnea de seleccin de rengln, y los bits de direccin A3, A2, se alimentan de un segundo decodificador uno de cuatro que activa una lnea de seleccin de columna. Solamente un registro estar en el rengln y la columna seleccionados por las entradas de difraccin, y estar habilitado. Buffer de salida.

Pgina 253

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El registro habilitado por las entradas de seleccin coloca el dato que tiene sobre el canal de datos. Estos datos entraran en los buffers de salida mismos que se encargan de trasmitirlos hacia las salidas externas siempre y cuando CS este en bajo. Si CS esta en alto, los buffers de salida se encuentran en el estado de alta impedancia, con lo que D7 hasta D0 estarn flotando0

4.1.3 Espacio de Memoria Arquitectura De La Memoria (RAM) Como sucede con la ROM, es til pensar que la RAM consta de varios registros, cada uno de los cuales almacenan una sola palabra de datos y tiene una direccin nica. Las RAMS comnmente vienen con capacidades de palabras de 1K, 4K, 8K, 16K, 64K, 128K, 256K, y 1024K, y tamaos de palabras de 1, 4, u 8 bits. Como veremos ms adelante, la capacidad de las palabras y el tamao de estas puede extenderse combinando circuitos integrados de memoria. Operacin de lectura. El cdigo de direccin selecciona un registro del circuito de memoria para leer o escribir. A fin de leer el contenido de registro seleccionado, la entrada lectura/escritura (R/-W)* debe ser un 1. Adems, la entrada (CS) seleccin de CI debe ser activada (un 0 de este caso). La combinacin de R/-W es igual a 1 y CS es igual a 0 habilita los buffers de salida de manera que el contenido de registro seleccionado aparecer en las cuatro salidas de datos. R/-W igual a 1

Pgina 254

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

tambin deshabilita los buffers de entrada de manera que las entradas de datos no afecten la memoria durante la operacin de lectura. Operacin de escritura. Para escribir una nueva palabra de cuatro bits en el registro seleccionado se requiere que R/-W igual a 0 y CS igual 0. esta combinacin habilita los buffers de entrada de manera que la palabra de cuatro bits aplicada a las entradas de datos se cargara en el registro seccionado. R/-W igual a 0 tambin deshabilita los buffers de salida que son de tres estados, de manera que las salidas de datos se encuentran en el estado de alta-z, durante una operacin de escritura. La operacin de escritura, desde luego, destruye la palabra que antes estaba almacenada en la direccin. Seleccin de CI. Muchos circuitos de memoria tienen una o ms entradas CS que se usan para habilitar o deshabilitar el circuito en su totalidad. En el modo deshabilitado todas las salidas y entradas de datos se deshabilitas (alta-z) de manera que no puede tener lugar no la operacin de lectura ni de escritura. En este modo en contenido de la memoria no se afecta. La razn para tener entradas CS ser ms clara cuando se combinen CI de memoria para tener mayores memorias. Muchos fabricantes llaman a estas entradas CE (habilitacin de circuito). Cuando las entradas CS o CE se encuentran en un estado activo, se dice que el CI de memoria ha sido seleccionado; de otro modo se dice que no est seleccionado. Muchos CI de memoria estn diseados para consumir una potencia mucho menor cuando estn seleccionados. En sistemas de memoria grandes, para una operacin dada de memoria, sern seleccionados una o ms CI de memoria mientras que los dems no. Terminales comunes de entrada/ salida.
Pgina 255

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

A fin de conservar terminales en un encapsulado de CI, los fabricantes a menudo combinan las funciones de entradas y salida de datos utilizando terminales comunes de entrada/salida. La entrada R/-W controla la funcin de estas terminales E/S. Durante una operacin de lectura, las terminales de entrada y salida actan como salida de datos que reproducen el contenido de la localidad de direccin seleccionada. Durante una operacin de escritura, las terminales de S/E actan como entrada de datos. A las cuales se aplican los datos al ser escritos. Arquitectura De La Memoria (EPROM) ROM. Una EPROM puede ser programada por el usuario y tambin puede borrarse y reprogramarse tantas veces como desee. Una vez programada, la EPROM es una memoria no voltil que contendr sus datos almacenados indefinidamente. El proceso para programar una EPROM implica la aplicacin de niveles de voltaje especiales (comnmente en un orden de 10 a 25 volts) a las entradas adecuadas del circuito en una cantidad de tiempo especificada (por lo general 50 minutos) por la localidad de direccin. El proceso de programacin generalmente es efectuado por un circuito especial de programacin que est separando del circuito en el cual la EPROM eventualmente trabajara. El proceso de programacin completo puede llevar barios minutos para un microcircuito EPROM. En una EPROM las celdas de almacenamiento son transistores MOSFET que tienen una compuerta de cilicio sin ninguna conexin elctrica (es decir, una compuerta flotante). En un estado normal, cada transistor est apagado y cada celda guarda un 1 lgico un transistor puede encenderse mediante la aplicacin de un curso de programacin de alto voltaje, el cual inyecta electrones de alta energa en la regin formada por la compuerta flotante. Estos electrones
Pgina 256

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

permanecen en esta regin una vez que ha finalizado el pulso ya que no existe ninguna trayectoria de descarga. Una vez que sea programado una celda de la EPROM se puede borrar su contenida exponiendo la EPROM a la luz ultravioleta (UV), la cual se aplica a travs de la ventana que se encuentra sobre el encapsulado del circuito. La luz (UV) produce una foto corriente que va desde la compuerta flotante hacia el sustrato de cilicio; con esto se apaga el transistor y se lleva de nuevo la celda hacia el estado uno lgico. Este proceso de borrado requiere entre 15 a 20 minutos de exposicin a los rayos (UV). Desafortunadamente, no existe ninguna forma de borrar solo algunas celdas; la luz (UV) borra todas las celdas al mismo tiempo por lo que una EPROM barrada almacena solamente unos lgicos. Una vez borrada puede volverse a programar. Tipos Memorias Memoria RAM RAM: Siglas de Random Access Memory, un tipo de memoria a la que se puede acceder de forma aleatoria; esto es, se puede acceder a cualquier byte de la memoria sin pasar por los bytes precedentes. RAM es el tipo ms comn de memoria en las computadoras y en otros dispositivos, tales como las impresoras. Hay dos tipos bsicos de RAM: DRAM (Dynamic RAM), RAM dinmica. SRAM (Static RAM), RAM esttica. Los dos tipos difieren en la tecnologa que usan para almacenar los datos. La RAM dinmica necesita ser refrescada cientos de veces por segundo, mientras

Pgina 257

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

que la RAM esttica no necesita ser refrescada tan frecuentemente, lo que la hace ms rpida, pero tambin ms cara que la RAM dinmica. Ambos tipos son voltiles, lo que significa que pueden perder su contenido cuando se desconecta la alimentacin. En el lenguaje comn, el trmino RAM es sinnimo de memoria principal, la memoria disponible para programas. En contraste, ROM (Read Only Memory) se refiere a la memoria especial generalmente usada para almacenar programas que realizan tareas de arranque de la mquina y de diagnsticos. La mayora de los computadores personales tienen una pequea cantidad de ROM (algunos Kbytes). De hecho, ambos tipos de memoria (ROM y RAM) permiten acceso aleatorio. Sin embargo, para ser precisos, hay que referirse a la memoria RAM como memoria de lectura y escritura, y a la memoria ROM como memoria de solo lectura. Se habla de RAM como memoria voltil, mientras que ROM es memoria novoltil. La mayora de los computadores personales contienen una pequea cantidad de ROM que almacena programas crticos tales como aquellos que permiten arrancar la mquina (BIOS CMOS). Adems, las ROMs son usadas de forma generalizada en calculadoras y dispositivos perifricos tales como impresoras laser, cuyas fonts estn almacenadas en ROMs.

Tipos de memoria RAM VRAM:


Pgina 258

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Siglas de Vdeo RAM, una memoria de propsito especial usada por los adaptadores de vdeo. A diferencia de la convencional memoria RAM, la VRAM puede ser accedida por dos diferentes dispositivos de forma simultnea. Esto permite que un monitor pueda acceder a la VRAM para las actualizaciones de la pantalla al mismo tiempo que un procesador grfico suministra nuevos datos. VRAM permite mejores rendimientos grficos aunque es ms cara que la una RAM normal. SIMM: Siglas de Single In line Memory Module, un tipo de encapsulado consistente en una pequea placa de circuito impreso que almacena chips de memoria, y que se inserta en un zcalo SIMM en la placa madre o en la placa de memoria. Los SIMMs son ms fciles de instalar que los antiguos chips de memoria individuales, y a diferencia de ellos son medidos en bytes en lugar de bits. El primer formato que se hizo popular en los computadores personales tena 3.5 de largo y usaba un conector de 32 pins. Un formato ms largo de 4.25, que usa 72 contactos y puede almacenar hasta 64 megabytes de RAM es actualmente el ms frecuente. Un PC usa tanto memoria de nueve bits (ocho bits y un bit de paridad, en 9 chips de memoria RAM dinmica) como memoria de ocho bits sin paridad. En el primer caso los ocho primeros son para datos y el noveno es para el chequeo de paridad. DIMM: Siglas de Dual In line Memory Module, un tipo de encapsulado, consistente en una pequea placa de circuito impreso que almacena chips de memoria, que se inserta en un zcalo DIMM en la placa madre y usa generalmente un conector de 168 contactos. DIP:

Pgina 259

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Siglas de Dual In line Package, un tipo de encapsulado consistente en almacenar un chip de memoria en una caja rectangular con dos filas de pines de conexin en cada lado. RAM Disk: Se refiere a la RAM que ha sido configurada para simular un disco duro. Se puede acceder a los ficheros de un RAM disk de la misma forma en la que se acceden a los de un disco duro. Sin embargo, los RAM disk son aproximadamente miles de veces ms rpidos que los discos duros, y son particularmente tiles para aplicaciones que precisan de frecuentes accesos a disco. Dado que estn constituidos por RAM normal. los RAM disk pierden su contenido una vez que la computadora es apagada. Para usar los RAM Disk se precisa copiar los ficheros desde un disco duro real al inicio de la sesin y copiarlos de nuevo al disco duro antes de apagar la mquina. Observe que en el caso de fallo de alimentacin elctrica, se perdern los datos que huviera en el RAM disk. El sistema operativo DOS permite convertir la memoria extendida en un RAM Disk por medio del comando VDISK, siglas de Virtual DISK, otro nombre de los RAM Disks. SRAM: Siglas de Static Random Access Memory, es un tipo de memoria que es ms rpida y fiable que la ms comn DRAM (Dynamic RAM). El trmino esttica viene derivado del hecho que necesita ser refrescada menos veces que la RAM dinmica. Los chips de RAM esttica tienen tiempos de acceso del orden de 10 a 30 nanosegundos, mientras que las RAM dinmicas estn por encima de 30, y las memorias bipolares y ECL se encuentran por debajo de 10 nanosegundos.
Pgina 260

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Un bit de RAM esttica se construye con un --- como circuito flip-flop que permite que la corriente fluya de un lado a otro basndose en cual de los dos transistores es activado. Las RAM estticas no precisan de circuiteria de refresco como sucede con las RAMs dinmicas, pero precisan ms espacio y usan ms energa. La SRAM, debido a su alta velocidad, es usada como memoria cach. DRAM: Siglas de Dynamic RAM, un tipo de memoria de gran capacidad pero que precisa ser constantemente refrescada (re-energizada) o perdera su contenido. Generalmente usa un transistor y un condensador para representar un bit Los condensadores debe de ser energizados cientos de veces por segundo para mantener las cargas. A diferencia de los chips firmware (ROMs, PROMs, etc.) las dos principales variaciones de RAM (dinmica y esttica) pierden su contenido cuando se desconectan de la alimentacin. Contrasta con la RAM esttica. Algunas veces en los anuncios de memorias, la RAM dinmica se indica errneamente como un tipo de encapsulado; por ejemplo se venden DRAMs, SIMMs y SIPs, cuando deberia decirse DIPs, SIMMs y SIPs los tres tipos de encapsulado tpicos para almacenar chips de RAM dinmica. Tambien algunas veces el trmino RAM (Random Access Memory) es utilizado para referirse a la DRAM y distinguirla de la RAM esttica (SRAM) que es ms rpida y ms estable que la RAM dinmica, pero que requiere ms energa y es ms cara SDRAM: Siglas de Synchronous DRAM, DRAM sncrona, un tipo de memoria RAM dinmica que es casi un 20% ms rpida que la RAM EDO. SDRAM entrelaza dos o ms matrices de memoria interna de tal forma que mientras que se est accediendo a una matriz, la siguiente se est preparando para el acceso.
Pgina 261

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

SDRAM-II es tecnologa SDRAM ms rpida esperada para 1998. Tambin conocido como DDR DRAM o DDR SDRAM (Double Data Rate DRAM o SDRAM), permite leer y escribir datos a dos veces la velocidad bs. FPM: Siglas de Fast Page Mode, memoria en modo paginado, el diseo ms comun de chips de RAM dinmica. El acceso a los bits de memoria se realiza por medio de coordenadas, fila y columna. Antes del modo paginado, era leido pulsando la fila y la columna de las lneas seleccionadas. Con el modo pagina, la fila se selecciona solo una vez para todas las columnas (bits) dentro de la fila, dando como resultado un rpido acceso. La memoria en modo paginado tambin es llamada memoria de modo Fast Page o memoria FPM, FPM RAM, FPM DRAM. El trmino fast fue aadido cuando los ms nuevos chips empezaron a correr a 100 nanoseconds e incluso ms. EDO: Siglas de Extended Data Output, un tipo de chip de RAM dinmica que mejora el rendimiento del modo de memoria Fast Page alrededor de un 10%. Al ser un subconjunto de Fast Page, puede ser substituida por chips de modo Fast Page. Sin embargo, si el controlador de memoria no est diseado para los ms rpidos chips EDO, el rendimiento ser el mismo que en el modo Fast Page. EDO elimina los estados de espera manteniendo activo el buffer de salida hasta que comienza el prximo ciclo. BEDO (Burst EDO) es un tipo ms rpido de EDO que mejora la velocidad usando un contador de direccin para las siguientes direcciones y un estado pipeline que solapa las operaciones. RAM Esttica o SDRAM, que no necesita ser restaurada, por lo que se vuelve ms rpida pero tambin ms costosa que la DRAM. La SDRAM surgi junto
Pgina 262

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

con los microprocesadores Pentium II, pero son utilizadas tambin para Pentium III, AMD K6, K62, K63, Athlon, Duron y dems variantes. Pueden funcionar a 66, 100 o a 133 MHz (PC 66, PC 100 o PC 133 respectivamente) En trminos prcticos, es buena para la mayora de los usos de empresa o domsticos, y es ms fcil de utilizar. MEMORIA ROM ROM es el acrnimo de Read-Only Memory (memoria de slo lectura). Es una memoria de semiconductor no destructible, es decir, que no se puede escribir sobre ella, y que conserva intacta la informacin almacenada, incluso en el caso de interrupcin de corriente (memoria no voltil). La ROM suele almacenar la configuracin del sistema o el programa de arranque del ordenador. La memoria de slo lectura o ROM es utilizada como medio de almacenamiento de datos en los ordenadores. Debido a que no se puede escribir fcilmente, su uso principal reside en la distribucin de programas que estn estrechamente ligados al soporte fsico del ordenador, y que seguramente no necesitarn actualizacin. Por ejemplo, una tarjeta grfica puede realizar algunas funciones bsicas a travs de los programas contenidos en la ROM. Hay una tendencia a poner cada vez menos programas en la esttica ROM, y ms en los discos, haciendo los cambios mucho ms fciles. Los ordenadores domsticos a comienzos de los 80 venan con todo su sistema operativo en ROM. No haba otra alternativa razonable ya que las unidades de disco eran generalmente opcionales. La actualizacin a una nueva versin significa usar un soldador o un grupo de interruptores DIP y reemplazar el viejo chip de ROM por uno nuevo. En el ao 2000 los sistemas operativos en general ya no van en ROM. Todava los ordenadores pueden dejar algunos de sus programas en memoria ROM, pero incluso en este caso, es ms frecuente que vaya en
Pgina 263

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

memoria flash. Los telfonos mviles y los asistentes personales digitales (PDA) suelen tener programas en memoria ROM (o, por lo menos en memoria flash). Algunas de las consolas de videojuegos que utilizan programas basados en la memoria ROM son la Super Nintendo, la Nintendo 64, la Mega Drive o la Game Boy. Estas memorias ROM, pegadas a cajas de plstico aptas para ser utilizadas e introducidas repetidas veces, son conocidas como cartuchos. Por extensin la palabra ROM puede referirse tambin a un archivo de datos que contenga una imagen del programa que se distribuye normalmente en memoria ROM, como una copia de un cartucho de videojuego. Una razn de que todava se utilice la memoria ROM para almacenar datos es la velocidad ya que los discos son ms lentos. An ms importante, no se puede leer un programa que es necesario para ejecutar un disco desde el propio disco. Por lo tanto, la BIOS, o el sistema de arranque oportuno del ordenador normalmente se encuentran en una memoria ROM. La memoria RAM normalmente es ms rpida de leer que la mayora de las memorias ROM, por lo tanto el contenido ROM se suele trasvasar normalmente a la memoria RAM cuando se utiliza. Sobre todo lectura Adems de los chips clsicos de memoria ROM puros, hay ROM llamada de sobre todo lectura (del ingls, Read-Mostly Memory). Esta pueden ser escrita durante su realizacin, pero adems se puede cambiar su contenido despus. Algunos ejemplos: Memoria PROM Memoria EPROM Memoria EEPROM Memoria flash

Pgina 264

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

PROM es el acrnimo de Programmable Read-Only Memory (ROM programable). Es una memoria digital donde el valor de cada bit depende del estado de un fusible (o antifusible), que puede ser quemado una sola vez. Estas memorias son utilizadas para grabar datos permanentes en cantidades menores a las ROMs, o cuando los datos deben cambiar en muchos o todos los casos. EPROM son las siglas de Erasable Programmable Read-Only Memory (ROM borrable programable). Es un tipo de chip de memoria ROM inventado por el ingeniero Dov Frohman que retiene los datos cuando la fuente de energa se apaga. En otras palabras, es no voltil. EEPROM son las siglas de electrically-erasable programmable read-only memory (ROM programable y borrable elctricamente), en espaol o castellano se suele referir al hablar como E PROM y en ingls E-Squared-PROM. Es un tipo de memoria ROM que puede ser programado, borrado y reprogramado elctricamente, a diferencia de la EPROM que ha de borrarse mediante rayos ultravioletas. Aunque una EEPROM puede ser leda un nmero ilimitado de veces, slo puede ser borrada y reprogramada entre 100.000 y 1.000.000 de veces. La Memoria flash es una forma evolucionada de la memoria EEPROM que permite que mltiples posiciones de memoria sean escritas o borradas en una misma operacin de programacin mediante impulsos elctricos, frente a las anteriores que slo permite escribir o borrar una nica celda cada vez. Por ello, flash permite funcionar a velocidades muy superiores cuando los sistemas emplean lectura y escritura en diferentes puntos de esta memoria al mismo tiempo. 1.1.4 Salidas/Entradas Arquitectura del sistema de E/S
Pgina 265

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

El sistema de entrada/salida est construido como un conjunto de manejadores apilados, cada uno de los cuales est asociado a un dispositivo de entrada/salida (archivos, red, etc.). Ofrece a las aplicaciones y entornos de ejecucin servicios genricos que permiten manejar los objetos de E/S del sistema. A travs de ellos se puede acceder a todos los manejadores de archivos y de dispositivos tales como: discos, redes, consola, tarjetas de sonido, etc. La arquitectura de E/S, es compleja y est estructurada en capas, cada una de las cuales tiene una funcionalidad bien definida.

Figura 4.13

Esquema de entrada/salida. Interfaz del sistema operativo para E/S. Sistema de archivos. Gestor de redes. Gestor de bloques. Gestor de cach. Manejadores de dispositivo.
Pgina 266

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Interfaz del sistema operativo para E/S Proporciona servicios de E/S sncrona y asncrona a las aplicaciones y una interfaz homognea para poderse comunicar con los manejadores de dispositivo ocultando los detalles de bajo nivel. Sistema de Archivos Proporcionan una interfaz homognea, a travs del sistema de archivos virtuales, para acceder a todos los sistemas de archivos que proporciona el sistema operativo (FFS, SV, NTFS, FAT, etc). Gestor de redes Proporciona una interfaz homognea para acceder a todos los sistemas de red que proporciona el sistema operativo (TCP/IP, Novell, etc.). Adems permite acceder a los manejadores de cada tipo de red particular de forma transparente. Gestor de bloques Los sistemas de archivos y otros dispositivos lgicos con acceso a nivel de bloques se suelen se suelen limitar a traducir las operaciones del formato del usuario de bloques que entiende el dispositivo y se las pasan a este gestor de bloques. Gestor de cach Optimiza la E/S mediante la gestin de almacenamiento intermedio en memoria para dispositivos de E/S de tipo bloque. Manejadores de dispositivo Proporcionan operaciones de alto nivel sobre los dispositivos y las traducen en su mbito interno a operaciones de control de cada dispositivo particular. Cada uno de estos componentes se considera un objeto del sistema, por lo que habitualmente todos los sistemas operativos permiten modificar el sistema operativo de forma esttica o dinmica para reemplazar, aadir o quitar
Pgina 267

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

manejadores de dispositivos. Sin embargo, por razones de seguridad no se permite a las aplicaciones de usuario acceder directamente a los dispositivos, sino a travs de la interfaz de llamadas al sistema.

1.1.4 Caractersticas especiales Cada fabricante oferta numerosas versiones de una arquitectura bsica de microcontrolador. En algunas ampla las capacidades de las memorias, en otras incorpora nuevos recursos, en otras reduce las prestaciones al mnimo para aplicaciones muy simples, etc. La labor del diseador es encontrar el modelo mnimo que satisfaga todos los requerimientos de su aplicacin. De esta forma, minimizar el coste, el hardware y el software. Los principales recursos especficos que incorporan los microcontroladores son: Temporizadores o "Timers". Perro guardin o "Watchdog". Proteccin ante fallo de alimentacin o "Brownout". Estado de reposo o de bajo consumo. Conversor A/D. Conversor D/A. Comparador analgico. Modulador de anchura de impulsos o PWM. Puertas de E/S digitales. Puertas de comunicacin.
Pgina 268

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Temporizadores o "Timers" Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de acontecimientos que suceden en el exterior (contadores). Para la medida de tiempos se carga un registro con el valor adecuado y a continuacin dicho valor se va incrementando o decrementando al ritmo de los impulsos de reloj o algn mltiplo hasta que se desborde y llegue a 0, momento en el que se produce un aviso. Cuando se desean contar acontecimientos que se materializan por cambios de nivel o flancos en alguna de las patitas del microcontrolador, el mencionado registro se va incrementando o decrementando al ritmo de dichos impulsos. Perro guardin o "Watchdog" Cuando el computador personal se bloquea por un fallo del software u otra causa, se pulsa el botn del reset y se reinicializa el sistema. Pero un microcontrolador funciona sin el control de un supervisor y de forma continuada las 24 horas del da. El Perro guardin consiste en un temporizador que, cuando se desborda y pasa por 0, provoca un reset automticamente en el sistema. Se debe disear el programa de trabajo que controla la tarea de forma que refresque o inicialice al Perro guardin antes de que provoque el reset. Si falla el programa o se bloquea, no se refrescar al Perro guardin y, al completar su temporizacin, "ladrar y ladrar" hasta provocar el reset. Proteccin ante fallo de alimentacin o "Brownout" Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentacin (VDD) es inferior a un voltaje mnimo ("brownout"). Mientras el voltaje de alimentacin sea inferior al de brownout el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor.

Pgina 269

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Estado de reposo de bajo consumo Son abundantes las situaciones reales de trabajo en que el microcontrolador debe esperar, sin hacer nada, a que se produzca algn acontecimiento externo que le ponga de nuevo en funcionamiento. Para ahorrar energa, (factor clave en los aparatos porttiles), los microcontroladores disponen de una instruccin especial (SLEEP en los PIC), que les pasa al estado de reposo o de bajo consumo, en el cual los requerimientos de potencia son mnimos. En dicho estado se detiene el reloj principal y se "congelan" sus circuitos asociados, quedando sumido en un profundo "sueo" el microcontrolador. Al activarse una interrupcin ocasionada por el acontecimiento esperado, el microcontrolador se despierta y reanuda su trabajo. Conversor A/D (CAD) Los microcontroladores que incorporan un Conversor A/D (Analgico/Digital) pueden procesar seales analgicas, tan abundantes en las aplicaciones. Suelen disponer de un multiplexor que permite aplicar a la entrada del CAD diversas seales analgicas desde las patitas del circuito integrado. Conversor D/A (CDA) Transforma los datos digitales obtenidos del procesamiento del computador en su correspondiente seal analgica que saca al exterior por una de las patitas de la cpsula. Existen muchos efectores que trabajan con seales analgicas. Comparador analgico Algunos modelos de microcontroladores disponen internamente de un Amplificador Operacional que acta como comparador entre una seal fija de referencia y otra variable que se aplica por una de las patitas de la cpsula. La salida del comparador proporciona un nivel lgico 1 0 segn una seal sea mayor o menor que la otra.

Pgina 270

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Tambin hay modelos de microcontroladores con un mdulo de tensin de referencia que proporciona diversas tensiones de referencia que se pueden aplicar en los comparadores. Modulador de anchura de impulsos o PWM Son circuitos que proporcionan en su salida impulsos de anchura variable, que se ofrecen al exterior a travs de las patitas del encapsulado.

Puertos de E/S digitales Todos los microcontroladores destinan algunas de sus patitas a soportar lneas de E/S digitales. Por lo general, estas lneas se agrupan de ocho en ocho formando Puertos. Las lneas digitales de los Puertos pueden configurarse como Entrada o como Salida cargando un 1 un 0 en el bit correspondiente de un registro destinado a su configuracin. Puertos de comunicacin Con objeto de dotar al microcontrolador de la posibilidad de comunicarse con otros dispositivos externos, otros buses de microprocesadores, buses de sistemas, buses de redes y poder adaptarlos con otros elementos bajo otras normas y protocolos. Algunos modelos disponen de recursos que permiten directamente esta tarea, entre los que destacan: UART, adaptador de comunicacin serie asncrona. USART, adaptador de comunicacin serie sncrona y asncrona Puerta paralela esclava para poder conectarse con los buses de otros microprocesadores.
Pgina 271

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

USB (Universal Serial Bus), que es un moderno bus serie para los PC. Bus I2C, que es un interfaz serie de dos hilos desarrollado por Philips. CAN (Controller Area Network), para permitir la adaptacin con redes de conexionado multiplexado desarrollado conjuntamente por Bosch e Intel para el cableado de dispositivos en automviles. En EE.UU. se usa el J185O. 1.2 Programacin

La electrnica ha evolucionado mucho. Casi todo lo que hasta hace unos aos se haca mediante un grupo (a veces muy numeroso) de circuitos integrados conectados entre s, hoy se puede realizar utilizando un microcontrolador y unos pocos componentes adicionales. De todos los fabricantes de micro controladores que existen, los ms elegidos por los hobbystas suelen ser los modelos de Microchip, en gran parte debido a la excelente documentacin gratuita que proporciona la empresa para cada modelo. El lenguaje nativo de estos microcontroladores es el ASM, y en el caso de la familia 16F solo posee 35 instrucciones. Pero el ASM es un lenguaje que est mucho ms cerca del hardware que del programador, y gracias a la miniaturizacin que permite incorporar cada vez ms memoria dentro de un microcontrolador sin aumentar prcticamente su costo, han surgido compiladores de lenguajes de alto nivel. Entre ellos se encuentran varios dialectos BASIC y C. El BASIC resulta bastante ms simple de aprender. Antes de comenzar a ver los temas programacin en si mismos, debemos aclarar algunos conceptos bsicos sobre los microcontroladores para poder entender lo que hace cada instruccin BASIC. Eso ser muy til para los que vayan a comenzar a programar a partir de este artculo.

Pgina 272

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Lo ms interesante de trabajar con microcontroladores es que se necesitan conocimientos tanto de electrnica (hardware) como de programacin (software) as que a lo largo de estos tutoriales iremos viendo temas de ambas disciplinas, ya que ntimamente vinculadas. Un microcontrolador es como un ordenador en pequeo: dispone de una memoria donde se guardan los programas, una memoria para almacenar datos, dispone de puertos de entrada y salida, etc. A menudo se incluyen puertos seriales (RS-232), conversores analgico/digital, generadores de pulsos PWM para el control de motores, bus I2C, y muchas cosas ms. Por supuesto, no tienen ni teclado ni monitor, aunque podemos ver el estado de teclas individuales o utilizar pantallas LCD o LED para mostrar informacin. En general, por cada cuatro ciclos de reloj del microcontrolador se ejecuta una instruccin ASM (una instruccin BASIC consta generalmente de ms de una instruccin ASM). Esto significa que un PIC funcionando a 20MHz puede ejecutar 5 millones de instrucciones por segundo. Los pines del PIC se dedican casi en su totalidad a los puertos que mencionbamos anteriormente. El resto (2 o ms) son los encargados de proporcionar la alimentacin al chip, y a veces, un sistema de RESET. Desde BASIC es posible saber si un pin esta en estado alto (conectado a 5V o a un 1 lgico) o en estado bajo (puesto a 0V o a un 0 lgico). Tambin se puede poner un pin de un puerto a 1 o 0. De esta manera, y mediante un rele, por ejemplo, se puede encender o apagar una luz, motor, maquina, etc. Uno de los microcontroladores ms famosos de todos los tiempos ha sido, sin duda, el 16F84A, que ya es considerado obsoleto. Un buen reemplazo es el 16F628A, y es el que utilizaremos en la mayora de los ejemplos y proyectos que veamos. La disposicin de sus pines es la siguiente:

Pgina 273

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.13

Funcin de los pines del 16F628A Como podemos ver, los pines 1, 2, 3, 4, 15, 16, 17 y 18 tienen el nombre de RAx. Esos pines conforman el puerto A, PORTA de ahora en ms. Los pines 6 al 13 forman parte del puerto B (PORTB). El pin 5 es el que se conectara al negativo de la fuente de alimentacin. El 14 ir conectado a 5V. Como habrn notado, muchos de los pines tienen ms de una descripcin. Esto se debe a que pueden utilizarse de varias maneras diferentes, seleccionables por programa. Por ejemplo, el pin 4 sirve como parte del PORTA, como RESET (MCLR = Master Clear) y como tensin de programacin (Vpp) 4.2.1 Modelo de Programacin Modelo De Programacin Del Microprocesador 8086 Los registros de un microprocesador son componentes dentro del

microprocesador que nos permiten almacenar datos. Estos datos pueden representar valores sobre los cuales se van a realizar operaciones, resultados
Pgina 274

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de las operaciones, direcciones de localidades de memoria donde se encuentran datos e instrucciones, direcciones de los dispositivos de entrada/salida sobre los que deseamos escribir o leer, o los datos a escribir o ledos de esos dispositivos. El nmero, tamao y uso de los registros de un microprocesador as como su conjunto de instrucciones determina la eficiencia con que el microprocesador realiza una tarea. A la descripcin del nmero, tamao y uso de los registros de un microprocesador se le conoce como el modelo de programacin del microprocesador. En la Figura 4.15 se ilustra el arreglo de registros internos del microprocesador 8086. Los microprocesadores ms poderosos de la familia del 8086 tienen otros registros adicionales pero no forman parte del estudio de este curso. Los registros del 8086 pueden clasificarse en tres grupos: registros de uso general, registros apuntadores y de ndice y registros de segmentos. Adicionalmente tienen un registro de banderas que seala las condiciones respecto al funcionamiento de la unidad aritmtica y lgica (ALU).

Pgina 275

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.15

Registros De Propsito General Los registros de propsito general, como su nombre lo indica, se utilizan en la forma en que lo desee el programador. Cada uno de estos registros se puede direccionar como un registro de 16 bits (AX, BX, CX, DX) o como un registro de 8 bits (AH, AL, BH, BL, CH, CL, DH, DL). Cada uno de los registros de 16 bits est formado por la concatenacin de dos registros de 8 bits: AX = AH: AL, BX=BH:BL, CX = CH:CL y DX = DH:DL, donde el bit 0 del registro AH es el bit 8 del registro AX, etc. Adicionalmente, algunas de las instrucciones del microprocesador emplean los registros de propsito general para tareas especficas. Por esta razn, a cada
Pgina 276

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

uno se le da su nombre (Acumulador, Base, Contador y Datos). Las funciones primarias de los registros de propsito general incluyen: AX, AH, AL (Acumulador): a menudo conserva el resultado temporal despus de una operacin aritmtica o lgica. BX, BH, BL (Base): Se utiliza para guardar la direccin base de listas de datos en la memoria. CX, CH, CL (Contador): Contiene el conteo para ciertas instrucciones de corrimientos y rotaciones, de iteraciones en el ciclo loop y operaciones repetidas de cadenas. DX, DH, DL (Datos): Contiene la parte ms significativa de un producto despus de una multiplicacin; la parte ms significativa del dividendo antes de la divisin. Registros Apuntadores Y De ndices Aunque los registros apuntadores y de ndices (a excepcin del registro apuntador de instrucciones) son tambin de uso general, se utilizan principalmente para formar la direccin efectiva o real de una localidad de memoria. Los registros apuntadores y de ndice contienen el desplazamiento con respecto a un segmento de un dato o una instruccin. Las funciones primarias de los registros apuntadores y de ndice incluyen: SP (Apuntador de pila): Contiene el desplazamiento con respecto al segmento de pila del tope de la pila del programa. El concepto de pila del programa se estudiar en el Tema VII: Procedimientos. El registro SP se emplea para direccionar datos en la pila cuando se ejecutan las instrucciones push y pop y

Pgina 277

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

cuando se llama o se regresa de un procedimiento mediante las instrucciones: call y ret, respectivamente. BP (Apuntador de base): Contiene el desplazamiento con respecto al segmento de pila de datos almacenados en la pila de un programa. SI (ndice fuente): Contiene el desplazamiento con respecto al segmento de datos de un elemento de un arreglo o cadena. Los arreglos y cadenas se estudiarn en el Tema VIII: Arreglos y cadenas. DI (ndice destino): Contiene el desplazamiento con respecto al segmento extra de un elemento de una cadena o arreglo. IP (Apuntador de instrucciones): Contiene siempre el desplazamiento con respecto al segmento de cdigo de la localidad de memoria que contiene la siguiente instruccin que va a ejecutar el microprocesador. Registros De Segmentos Los registros de segmentos se utilizan para formar la direccin efectiva o real de una localidad de memoria. Los registros de segmentos contienen la direccin de segmento de un dato o una instruccin. El cdigo y los datos de un programa en ejecucin se encuentran cada uno en uno o ms segmentos de memoria. La pila del programa ocupa otro segmento. Los registros de segmento son: CS (Cdigo): Tiene la direccin lgica del segmento en que se encuentra el cdigo de un programa. Si el cdigo ocupa ms de un segmento, contiene la direccin lgica de uno de los segmentos.

Pgina 278

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

DS (Datos): Tiene la direccin lgica del segmento en que se encuentran los datos estticos de un programa. Si los datos ocupan ms de un segmento, contiene la direccin lgica de uno de los segmentos. ES (Extra): Este registro tambin tiene la direccin lgica de uno de los segmentos en que se encuentran los datos estticos de un programa. Este registro se utiliza en ciertas operaciones del microprocesador para el manejo de cadenas. SS (Pila): Tiene la direccin lgica del segmento en que se encuentran la pila del sistema. La pila no puede ser mayor a un segmento. Para calcular una direccin efectiva o real de un dato o una instruccin, el microprocesador toma de uno de los registros de segmento el valor del segmento y de otro registro el valor del desplazamiento:

En el clculo de la direccin de una instruccin, el valor del segmento se encuentra en el registro de segmento de cdigo, CS, y el desplazamiento en el registro apuntador de instrucciones, IP.

En el clculo de la direccin de un dato, el valor del segmento se encuentra en el registro de segmento de datos, DS, y el desplazamiento puede estar en los registros BX, DI, SI, o ser un nmero de 16 bits.

En algunas instrucciones para cadenas, tambin se emplea el registro de segmento extra, ES, y el registro DI para el clculo de la direccin de los datos. ES contiene, el valor del segmento y DI el valor del desplazamiento.

En el clculo de la direccin de los datos almacenados en la pila, el valor del segmento se encuentra en el registro de segmento de pila, SS, y el
Pgina 279

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

desplazamiento en el registro apuntador de pila, SP o en el registro apuntador de base, BP. El Registro De Banderas Cada bandera es un bit en el registro de banderas, tambin llamado registro de cdigo de condiciones. En la figura 4.16 se ilustra el registro de banderas del microprocesador 8086. Aunque el registro de banderas es de 16 bits slo hay nueve banderas: O, D, I, T, S, Z, A, P, C. Los otros 7 bits no son usados.

Figura 4.16

De estas nueve banderas, seis de ellas cambian despus de ejecutar muchas de las instrucciones aritmticas y lgicas. Estas seis banderas son: C (Acarreo): Indica un acarreo despus de una suma o un prstamo despus de una resta. La bandera de acarreo tambin indica condiciones de error en ciertos programas y procedimientos. P (Paridad): Es un cero para una paridad impar y un 1 para una paridad par. La paridad es un conteo de unos expresada como un nmero par e impar. A (Acarreo auxiliar): Indica un acarreo despus de una suma o un prstamo despus de una resta del bit 3 al bit 4 en el resultado. Esta bandera slo se utiliza en las operaciones dadas para ajustar el valor de AL despus de una suma o resta BCD.

Pgina 280

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Z (Cero): Indica que el resultado de una operacin aritmtica o lgica es cero. Si Z = 1, el resultado es cero y si Z = 0, el resultado no es cero. S (Signo): Indica el signo aritmtico del resultado despus de una suma o una resta. Si S = 1, el resultado es negativo. Si S = 0, el resultado es positivo. Se debe tener en cuenta que el valor del bit ms significativo aparece en el bit de signo en cualquier instruccin que afecte las banderas. O (Sobreflujo): Es una condicin que ocurre cuando se suman o se restan nmeros con signo. Un sobreflujo indica que el resultado ha excedido la capacidad de la mquina. Por ejemplo si se suma 7FH + 01H (127 + 1) el resultado es 80H (-128). Este resultado representa una situacin de sobreflujo sealado por la bandera para la suma con signo. Para operaciones sin signo esta bandera se ignora. Las otras tres banderas se utilizan para controlar ciertas caractersticas del microprocesador. Esas tres banderas y su uso son: T (Trampa): Activa, si se pone a 1, o desactiva, si se pone a 0, el modo de ejecucin paso a paso. Este modo es utilizado por los depuradores para ejecutar las instrucciones una a la vez y permitir observar el efecto de la instruccin sobre los registros y la memoria. I (Interrupcin): Habilita, si se pone a 1, o deshabilita, si se pone a 0, las interrupciones al microprocesador. El estado de esta bandera se controla con las instrucciones sti (habilitar interrupciones) y cli (desactivar las interrupciones). D (Direccin): Controla la seleccin de autoincremento o autodecremento de los registros DI o SI durante las instrucciones de cadenas y arreglos. Si D = 1 hay autodecremento en los registros y si D = 0 hay autoincremento. El estado
Pgina 281

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

de esta bandera se controla con las instrucciones std (habilitar direccin) y cld (desactivar direccin).

4.2.2 Conjunto de instrucciones

Conjunto De Instrucciones (Microprocesadores 8086/8088) Se pueden clasificar en los siguientes grupos: Instrucciones de Transferencia de Datos. Estas instrucciones mueven datos de una parte a otra del sistema; desde y hacia la memoria principal, de y a los registros de datos, puertos de E/S y registros de segmentacin. Las instrucciones de transferencia de datos son las siguientes:

MOV transfiere XCHG intercambia IN entrada OUT salida XLAT traduce usando una tabla LEA carga la direccin efectiva LDS carga el segmento de datos LES carga el segmento extra LAHF carga los indicadores en AH SAHF guarda AH en los indicadores PUSH FUENTE (sp) fuente POP DESTINO destino (sp)

Control de Bucles (instrucciones simples)

Pgina 282

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Estas posibilitan el grupo de control ms elemental de nuestros programas. Un bucle es un bloque de cdigo que se ejecuta varias veces. Hay 4 tipos de bucles bsicos:

Bucles sin fin Bucles por conteo Bucles hasta Bucles mientras

Las instrucciones de control de bucles son las siguientes:


INC incrementar DEC decrementar LOOP realizar un bucle LOOPZ,LOOPE realizar un bucle si es cero LOOPNZ,LOOPNE realizar un bucle si no es cero JCXZ salta si CX es cero

Instrucciones de Prueba, Comparacin y Saltos. Este grupo es una continuacin del anterior, incluye las siguientes instrucciones:

TEST verifica CMP compara JMP salta JE, JZ salta si es igual a cero JNE, JNZ salta si no igual a cero JS salta si signo negativo JNS salta si signo no negativo JP, JPE salta si paridad par

Pgina 283

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

JNP, JOP salta si paridad impar JO salta si hay capacidad excedida JNO salta si no hay capacidad excedida JB, JNAE salta si por abajo (no encima o igual) JNB, JAE salta si no est por abajo (encima o igual) JBE, JNA salta si por abajo o igual (no encima) JNBE, JA salta si no por abajo o igual (encima) JL, JNGE salta si menor que (no mayor o igual) JNL, JGE salta si no menor que (mayor o igual) JLE, JNG salta si menor que o igual (no mayor) JNLE, JG salta si no menor que o igual (mayor)

Instrucciones de Llamado y Retorno de Subrutinas. Para que los programas resulten eficientes y legibles tanto en lenguaje ensamblador como en lenguaje de alto nivel, resultan indispensables las subrutinas:

CALL llamada a subrutina RET retorno al programa o subrutina que llam

Instrucciones Aritmticas. Estas instrucciones son las que realiza directamente el 8086/8088 a. Grupo de adicin:

ADD suma ADC suma con acarreo AAA ajuste ASCII para la suma DAA ajuste decimal para la suma

b. Grupo de sustraccin:
Pgina 284

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

SUB resta SBB resta con acarreo negativo AAS ajuste ASCII para la resta DAS ajuste decimal para la resta

c. Grupo de multiplicacin:

MUL multiplicacin IMUL multiplicacin entera AAM ajuste ASCII para la multiplicacin

d. Grupo de divisin:

DIV divisin IDIV divisin entera AAD ajuste ASCII para la divisin

e. Conversiones:

CBW pasar octeto a palabra CWD pasar palabra a doble palabra NEG negacin

f. Tratamiento de cadenas: Permiten el movimiento, comparacin o bsqueda rpida en bloques de datos:


MOVC transferir carcter de una cadena MOVW transferir palabra de una cadena CMPC comparar carcter de una cadena CMPW comparar palabra de una cadena SCAC buscar carcter de una cadena SCAW buscar palabra de una cadena LODC cargar carcter de una cadena
Pgina 285

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

LODW cargar palabra de una cadena STOC guardar carcter de una cadena STOW guardar palabra de una cadena REP repetir CLD poner a 0 el indicador de direccin STD poner a 1 el indicador de direccin

Instrucciones Lgicas. Son operaciones bit a bit que trabajan sobre octetos o palabras completas:

NOT negacin AND producto lgico OR suma lgica XOR suma lgica exclusiva

Instrucciones de Desplazamiento, Rotacin y Adeudos. Bsicamente permiten multiplicar y dividir por potencias de 2

SHL, SAL desplazar a la izquierda (desplazamiento aritmtico) SHR desplazar a la derecha SAR desplazamiento aritmtico a la derecha ROL rotacin a la izquierda ROR rotacin a la derecha RCL rotacin con acarreo a la izquierda RCR rotacin con acarreo a la derecha CLC borrar acarreo STC poner acarreo a 1

Pgina 286

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Instrucciones de Pila. Una de las funciones de la pila del sistema es la de salvaguardar (conservar) datos (la otra es la de salvaguardar las direcciones de retorno de las llamadas a subrutinas):

PUSH introducir POP extraer PUSHF introducir indicadores POPF extraer indicadores

Instrucciones de Control del microprocesador. Hay varias instrucciones para el control de la CPU, ya sea a ella sola, o en conjuncin con otros procesadores:

NOP no operacin HLT parada WAIT espera LOCK bloquea ESC escape

Instrucciones de Interrupcin.

STI poner a 1 el indicador de interrupcin CLI borrar el indicador de interrupcin INT interrupcin INTO interrupcin por capacidad excedida (desbordamiento) IRET retorno de interrupcin

Pgina 287

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Las instrucciones de transferencia condicional del control del programa se pueden clasificar en 3 grupos: 1. Instrucciones usadas para comparar dos enteros sin signo: a. JA o JNBE. Salta si est arriba o salta si no est abajo o si no es igual (jump if above o jump if not below or equal) El salto se efecta si la bandera ce CF = 0 o si la bandera de ZF = 0 b. JAE o JNB. Salta si est arriba o es igual o salta si no est abajo (jump if above or equal o jump if not below) El salto se efecta si CF = 0. c. JB o JNAE. Salta si est abajo o salta si no est arriba o si no es igual (jump if below or equal o jump if not above or equal) El salto se efecta si CF=1. d. JBE o JNA. Salta si est abajo o si es igual o salta si no est arriba (jump if below or equa o jump if not above) El salto se efecta si CF = 1. e. JE o JZ. Salta si es igual o salta si es cero (jump equal o jump if zero) El salto se efecta si ZF = 1 (tambin se aplica a comparaciones de enteros con signo) f. JNE o JNZ. Salta si no es igual o salta si no es cero (jump if not equal o jump if not zero) El salto se efecta si ZF = 0 (tambin se aplica a comparaciones de enteros con signo) 2. Instrucciones usadas para comparar dos enteros con signo: a. JG o JNLE. Salta si es ms grande o salta si no es menor o igual (jump if greater o jump if not less or equal) El salto se efecta si ZF = 0 o OF = SF. b. JGE o JNL. Salta si es ms grande o igual o salta si no es menor que (jump if greater or equal o jump if not less) El salto se efecta si SF = OF. c. JL o JNGE. Salta si es menor que o salta si no es mayor o igual (jump if less o jump if not greater or equal) El salto se efecta si SF = OF. d. JLE o JNG. Salta si es menor o igual o salta si no es ms grande (jump if less or equal o jump if not greater) El salto se efecta si ZF = 1 o SF = OF. 3. Instrucciones usadas segn el estado de banderas:
Pgina 288

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

a. JC Salta si hay acarreo (jump if carry) El salto se efecta si CF = 1. b. JNC Salta si no hay acarreo (jump if not carry) El salto se efecta si CF = 0. c. JNO Salta si no hay desbordamiento (jump if not overflow) El salto se efecta si OF = 0. d. JNP o JPO Salta si no hay paridad o salta si la paridad en non. El salto se efecta si PF= 0. e. JNS Salta si el signo est apagado (jump if not sign) El salto se efecta si SF = 0. f. JO Salta si hay desbordamiento (jump if overflow) El salto se efecta si OF = 1. g. JP o JPE Salta si hay paridad o salta si la paridad es par (jump if parity o jump if parity even) El salto se efecta si PF = 1. h. JS Salta si el signo est prendido (jump if sign set) El salto se efecta si SF = 1. Las comparaciones con signo van de acuerdo con la interpretacin que usted le quiera dar a los bytes o palabras de su programa. Por ejemplo, suponga que tiene un byte cuyo valor es 11111111 en binario y que desea compararlo con otro cuyo valor es 00000000. Es 11111111 mayor que 00000000? S y NO, eso depende de la interpretacin que usted le quiera dar. Si trabaja con nmeros enteros sin signo S LO SER, pues 255 es mayor que 0. Por el contrario, si tiene signo entonces SER MENOR puesto que -1 es siempre menor que 0. Lo anterior lleva a seleccionar las instrucciones de comparacin y de salto de acuerdo con la interpretacin que se les d a los bytes o palabras; reflexione sobre este punto. Los saltos condicionales se encuentran limitados al rango de -128 a +127 bytes como mxima distancia, ya sea adelante o hacia atrs. Si desea efectuar un

Pgina 289

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

salto a mayores distancias es necesario crear una condicin mixta entre saltos condicionales y no condicionales. Iteraciones. Con los saltos condicionales y no condicionales se pueden crear estructuras de iteracin bastante complejas, aunque existen instrucciones especficas para ello tal como loop. Esta instruccin es muy til cuando se va a efectuar cierto bloque de instrucciones un nmero finito de veces. He aqu un ejemplo:

CUENTA: DW, 100 MOV CX, CUENTA ITERA: LOOP ITERA El bloque de instrucciones que se encuentra entre la etiqueta ITERA y la instruccin loop ser ejecutado hasta que el registro CX sea igual a 0. Cada vez que se ejecuta la instruccin loop, el registro CX es decrementado en 1 hasta llegar a 0. Esta instruccin tiene la limitante de que debe encontrarse en el rango de +128 a -127 (mximo nmero de bytes entre ITERA y loop) Iteraciones condicionales Existen otras dos variantes de la instruccin loop. Las instrucciones loope y loopz decrementan CX e iteran si CX = 0 y ZF = 1, mientras que loopne y looppnz iteran si CX" 0 y ZF" 0. Un punto importante es que al decrementarse CX las banderas NO RESULTAN AFECTADAS. Por lo tanto, le corresponde a usted afectarlas dentro del bloque de iteracin. FORMATO DE LAS INSTRUCCIONES

Pgina 290

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Cada instruccin en lenguaje ensamblador del 8088 est compuesta de 4 campos: etiqueta operacin operando comentario. El campo comentario se utiliza para propsitos de documentacin y es opcional. Campo etiqueta: Una etiqueta debe comenzar con un carcter alfabtico y puede contener hasta 31 caracteres, incluyendo:

Letras de la A a la Z Nmeros del 0 al 9 Los smbolos especiales: - $ . @ %

No se puede utilizar un nombre que coincida con una palabra reservada o directiva del ensamblador. Si el nombre incluye un punto, entonces el punto debe ser el primer carcter. Campo operacin: Contiene el nemotcnico de la instruccin, que es de 2 a 6 caracteres. Campo operando: Contiene la posicin o posiciones donde estn los datos que van a ser manipulados por la instruccin. Campo comentario: Se utiliza para documentar el cdigo fuente del ensamblador. Debe separarse del ltimo campo por al menos un espacio e iniciar con ;. Cuando inicia un comentario en una lnea sta deber tener en la primera columna el carcter;

Modos De Direccionamiento Y Generacin Del Cdigo Objeto Generacin de la direccin de la instruccin. Todos los registros internos del 8086/8088 son de 16 bits. El bus de direccin es de 20 bits, por lo que se usa ms de un registro interno para generar la direccin de 20 bits.

Pgina 291

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Los 2 registros usados para la direccin de la instruccin son el IP y el CS. Se combinan en una forma especial para generar la direccin de 20 bits. direccin de 20 bits = 1610 * CS + IP Por ejemplo: Si los registros CS e IP contienen los valores: CS = 1000H IP = 0414 H La direccin de 20 bits es: 1610 * 1000H + 0414H = 10000H + 0414H = 10414H Esta es la direccin en memoria desde la cual la nueva instruccin debe buscarse. Al registro IP se le refiere como offset, el registro CS * 1610 apunta a la direccin de inicio o segmento en memoria desde el cual se calcula el offset. La Figura 4.17 muestra grficamente cmo se calcula la direccin de 20 bits.

Figura 4.17

Cada direccin generada por el 8086/8088 usa uno de los 4 registros de segmento. Este registro de segmento es recorrido 4 bits hacia la izquierda antes de ser sumado al offset. La instruccin del CPU especfica cules registros internos se usan para generar el offset. Vamos a ver los diferentes modos de direccionamiento tomando como ejemplo la instruccin MOV. Instruccin MOV Transfiere un byte desde el operando fuente al operando destino. Tiene el siguiente formato: MOV destino, fuente

Pgina 292

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Direccionamiento Inmediato El operando fuente aparece en la instruccin. Un ejemplo, es el que mueve un valor constante a un registro interno. MOV AX, 568 Direccionamiento a Registro Indica que el operando a ser usado est contenido en uno de los registros internos de propsito general del CPU. En el caso de los registros AX, BX, CX o DX los registros pueden ser de 8 a 16 bits Ejemplos: MOV AX, BX ; AX . BX MOV AL, BL ; AL . BL Cuando usamos direccionamiento a registro, el CPU realiza las operaciones internamente, es decir, no se genera direccin de 20 bits para especificar el operando fuente. Direccionamiento Directo Especifica en la instruccin la localidad de memoria que contiene al operando. En este tipo de direccionamiento, se forma una direccin de 20 bits. Ejemplo: MOV CX, COUNT El valor de COUNT es una constante. Es usada como el valor offset en el clculo de la direccin de 20 bits El 8086/8088 siempre usa un registro de segmento cuando calcula una direccin fsica. Cul registro se debe usar para esta instruccin? Respuesta: DS En la Figura 4.18, se muestra el clculo de la direccin desde la cual se tomar el dato que se carga en CX.

Pgina 293

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.18

Este es el segmento por omisin que se usa. Sin embargo, cualquiera de los 4 segmentos puede usarse. Esto se efecta especificando el registro apropiado en la instruccin. Por ejemplo, suponga que deseamos usar el registro ES en lugar del DS: MOV CX, ES: COUNT Direccionamiento de Registro Indirecto Con el modo de direccionamiento de registro ndice, la direccin offset de 16 bits est contenida en un registro base o registro ndice. Esto es, la direccin reside en el registro BX, BP, SI o DI. Ejemplo: MOV AX, [SI] El valor de 16 bits contenido en el registro SI debe ser el offset usado para calcular la direccin de 20 bits. Otra vez, debe usarse un registro de segmento para generar la direccin final. El valor de 16 bits en SI se combina con el segmento apropiado para generar la direccin. Direccionamiento de Registro Indirecto con Desplazamiento

Pgina 294

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Este tipo de direccionamiento incluye a los dos modos de direccionamiento anteriores. La direccin offset de 16 bits se calcula sumando el valor de 16 bits especificado en un registro interno y una constante. Por ejemplo, si usamos el registro interno DI y el valor constante (desplazamiento), donde COUNT ha sido previamente definido, el nemotcnico para esta construccin es: MOV AX, COUNT [DI] Si: COUNT = 0378H DI = 04FAH 0872H Entonces, la direccin offset de 16 bits es 0872H Direccionamiento de Registro Indirecto con un Registro Base y un Registro ndice Este modo de direccionamiento usa la suma de dos registros internos para obtener la direccin offset de 16 bits a usarse en el clculo de la direccin de 20 bits. Ejemplos: MOV [BP] [DI], AX ; el offset es BP + DI MOV AX, [BX] [SI] ; el offset es BX + SI Direccionamiento de Registro ndice Indirecto con un Registro Base, un Registro ndice y un Registro Constante Este es el modo de direccionamiento ms complejo. Es idntico al modo de direccionamiento anterior, excepto que se suma una constante. Ejemplo: Suponga que tenemos los siguientes valores en los registros: DI = 0367H BX = 7890H COUNT = 0012H
Pgina 295

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

7C09H Este modo de direccionamiento indica que el offset especificado por la suma de DI + BX + COUNT sea usado para mover el dato en memoria en el registro AX. MOV AX, COUNT [BX] [DI] La direccin offset de 16 bits es 7C09H. La direccin completa en 20 bits se calcula de la expresin: 1610*DS + 7C09H Si el DS contiene 3000H, la direccin completa de 20 bits es: 3000H + 7C09H = 37C09H Cdigo Objeto del 8086/8088 Como programador, debes escribir los nemotcnicos. El cdigo objeto es generado por la computadora (son los bytes que ejecuta el CPU) Con el conjunto de instrucciones del 8086/8088, cada tipo de modo de direccionamiento puede requerir un nmero diferente de bytes. En los ejemplos siguientes proporcionaremos el nmero de bytes requeridos por cada modo de direccionamiento. Bit W y campo REG La instruccin MOV AX, 568H Indica mover inmediatamente al registro interno AX el valor 568H. El registro interno puede ser de 1 byte o de una palabra. Esta instruccin requiere 2 o 3 bytes, como se indica en la Figura 4.19.

Pgina 296

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.19

El primer byte contiene los bits ms significativos (MSB) como 1011. El prximo bit es W. W indica: 1 para word 0 para byte. Esto es, si el registro destino es de 16 bits o de 8 bits. Los siguientes 3 bits del primer byte, campo REG, determinan cul registro est involucrado. La Figura 4.20, muestra el cdigo de seleccin del registro. REG 000 001 010 011 100 101 110 111 REGISTRO DE 16 BITS AX CX DX BX SP BP SI DI
Figura 4.20

REGISTRO DE 8 BITS AL CL DL BL AH CH DH BH

Campo DATA. Si el registro de destino es de 1 byte, el dato debe estar en el segundo byte de la instruccin. Si el destino es de una palabra, el segundo byte de la instruccin son los 8 bits menos significativos (lsb) del dato, el tercer byte de la instruccin son los 8 bits ms significativos (MSB) del dato. La siguiente tabla, muestra los nemotcnicos 2 o 3 bytes
Pgina 297

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.21

Bit D, MOD y R/M En este ejemplo, moveremos datos desde memoria o moveremos un registro hacia o desde otro registro. Usaremos una instruccin como: MOV AX, BX Esta instruccin es de 2 bytes porque no nos referimos a memoria. Los bytes aparecern como lo muestra la Figura 4.22:

Figura 4.22

El primer byte contiene los 2 bits menos significativos como DW. El bit W es para word=1 o para byte=0. La D es para indicar si el dato ser almacenado en el operando especificado por los campos MOD y R/M (D = 0) o si va a ser almacenado en el registro especificado por el campo REG (D = 1) La Figura F muestra las asignaciones para MOD y R/M. Note en la descripcin de MOD=11, el campo R/M es codificado con un formato de registro. Este formato se mostr en la Figura D.

Pgina 298

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.23

Para esta instruccin deseamos almacenar el dato en el registro AX. Por lo tanto el bit D=0. Esto significa que el dato debe ser almacenado en la localidad especificada por los campos MOD y R/M. Por lo tanto, MOD = 11. El campo R/M = 000, indicando que el registro AX es el destino para los datos. El campo REG para el segundo byte de datos es 011. Indicando que el registro BX es el registro fuente a ser utilizado. El segundo byte de la instruccin es 11 011 000 = D8. Por lo que el cdigo objeto para la instruccin es: MOV AX, BX es 89 D8 Cdigo Objeto para el uso de Registro Base y Registro ndice Examinemos un ltimo ejemplo para generar cdigo objeto para el 8086/8088. En ste vamos a calcular el cdigo objeto para la instruccin: MOV CX, COUNT [BX] [SI] Esta instruccin es de 4 bytes, como se muestra en la Figura 4.24:

Pgina 299

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.24

El primer byte de la Figura 4.24, debe tener el bit D=1. Esto es debido a que el destino para el dato debe ser especificado por el campo REG en el segundo byte. El bit W=1. porque es una transferencia de palabra. El primer byte es: 10001011 = 8B En el segundo byte, ya que estamos usando una constante que requiere 16 bits, el campo MOD = 10. Refiriendo a la Figura F, sta indica que el desplazamiento debe ser formateado en 2 bytes y deben seguir a este segundo byte. El prximo campo para el segundo byte es el campo de registro (REG) Ya que debemos usar el registro CX, este valor debe ser 001 (esto se obtiene de la Figura 4.20) Finalmente, el campo R/M. Ya que el campo MOD<> 11, este campo debe especificar cul registro base y cul registro de ndice estn siendo usados para generar la direccin offset de 16 bits. En nuestro caso, usamos el campo [BX+SI+DESPLAZAMIENTO] Esto corresponde a R/M = 000, ver Figura F El segundo byte es 1000 1000 = 88 El tercer y cuarto byte corresponde al desplazamiento En este caso, el valor de COUNT = 0345H. Los ltimos 2 bytes son 4503H Esto da el siguiente cdigo objeto total para la instruccin: MOV CX, COUNT [BX] [SI] 8BH 88H 45H

Pgina 300

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

03H Sumario del Cdigo Objeto Una pregunta que surge al programador Debo conformar los campos D, W, REG, MOD y R/M, en cada instruccin? NO, la computadora lo hace (el lenguaje ensamblador lo genera) Esta seccin se present para permitirle al programador un mejor entendimiento del trabajo interno del microprocesador 8086/8088 Interrupciones de los Servicios Bsicos de Entrada y Salida (BIOS, por sus siglas en ingls) FUNCIN INT 21 (AH)=1 ENTRADA DESDE EL TECLADO

Esta funcin espera a que se digite un carcter en el teclado. Muestra el carcter en la pantalla (eco) y retorna el cdigo ASCII en el registro AL. (AL) = carcter ledo desde el teclado Ejemplo: MOV AH, 1 INT 21h; AL = dato ASCII ledo desde el teclado

(AH)=2 SALIDA EN EL EXHIBIDOR (display)

Despliega un carcter en la pantalla. Algunos caracteres tienen un significado especial:


7 CAMPANA: Suena durante un segundo 8 BACKSPACE: Mueve el cursor hacia la izquierda un carcter 9 TABULADOR: Mueve el tabulador a su prxima posicin (cada 8 caracteres)

0Ah LF: Mueve el cursor a la siguiente lnea 0Dh CR: Mueve el cursor al inicio de la lnea corriente (DL): Carcter a desplegar en la pantalla
Pgina 301

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Ejemplo: Desplegar un carcter MOV DL, 40; carcter a desplegar MOV AH, 2 INT 21h; aparece en la posicin corriente del cursor; el carcter contenido en DL

Figura 4.25

Ejemplo: Hacer que suene la campana 2 segundos MOV DL, 7; DL = campana MOV AH, 02 INT 21h; 1 segundo INT 21h; 1 segundo (AH)=8 ENTRADA DESDE EL TECLADO SIN ECO

Lee un carcter desde el teclado, pero no se despliega en la pantalla (AL) = carcter ledo desde el teclado MOV AH, 08 INT 21h; AL = carcter (AH)=9 DESPLIEGA UNA CADENA DE CARACTERES

Despliega en la pantalla la cadena apuntada por el par de registros DS:DX. Debemos marcar el fin de la cadena con el carcter $ DS: DX apuntan a la cadena que se va a desplegar (AH)=0A h LEE UNA CADENA

Pgina 302

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Lee una cadena de caracteres desde el teclado Dnde queda la informacin? (AH)=25h ACTIVA EL VECTOR DE INTERRUPCIN

Activa un vector de interrupcin, para que apunte a una nueva rutina (AL) = nmero de interrupcin ES: BX direccin del manipulador de interrupciones (AH)=35h CONSIGUE VECTOR DE INTERRUPCIN

Consigue la direccin de la rutina de servicio para el nmero de interrupcin dado en AL (AL) = nmero de interrupcin ES: BX direccin del manipulador de interrupcin (AH)=4Ch SALIDA AL DOS

Retorna al DOS. Trabaja para ambos archivos *.com y *.Exe. Recuerde que INT 20h trabaja solamente para archivos *.com (AL) = cdigo de retorno, normalmente activo a 0, pero se puede activar a cualquier otro nmero y usar los comandos del DOS, IF y ERRORLEVEL, para detectar errores.

4.2.3 Modos de direccionamiento Los modos de direccionamiento son un aspecto de la arquitectura del conjunto de instrucciones en la mayora de la unidad central de procesamiento (CPU) disea. The various addressing modes that are defined in a given instruction set architecture define how machine language instructions in that architecture identify the operand (or operands) of each instruction. Los modos de direccionamiento diferentes que se definen en una arquitectura de conjunto de instrucciones dadas definir la forma en lenguaje de mquina las instrucciones
Pgina 303

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

en el que identifican a la arquitectura del operando (u operandos) de cada instruccin. An addressing mode specifies how to calculate the effective memory address of an operand by using information held in registers and/or constants contained within a machine instruction or elsewhere. Un modo de direccionamiento especifica la forma de calcular la direccin de memoria efectiva de un operando mediante el uso de la informacin contenida en registros y / o las constantes contenidas en una instruccin de mquina o en otra parte. In computer programming , addressing modes are primarily of interest to compiler writers and to those who write code directly in assembly language .En la programacin de computadoras , modos de direccionamiento son primordialmente de inters para compilador de escritores y de los que escriben el cdigo directamente en lenguaje ensamblador . Note that there is no generally accepted way of naming the various addressing modes.No hay forma generalmente aceptada de nombrar a los distintos modos de direccionamiento. In particular, different authors and computer manufacturers may give different names to the same addressing mode, or the same names to different addressing modes. En particular, diferentes autores y fabricantes de equipos pueden dar nombres diferentes para el mismo modo de direccionamiento, o los mismos nombres a los diferentes modos de direccionamiento. Furthermore, an addressing mode which, in one given architecture, is treated as a single addressing mode may represent functionality that, in another architecture, is covered by two or more addressing modes. Por otra parte, un modo de direccionamiento que, de una arquitectura dada, se trata como un solo modo abordar puede representar servicios que, en otra arquitectura, est cubierto por dos o ms modos de direccionamiento. For example, some complex instruction set computer (CISC) computer architectures, such as the Digital Equipment Corporation (DEC) VAX , treat registers and literal/immediate constants as just another addressing mode.

Pgina 304

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Por ejemplo, algunas instrucciones de equipo complejo (CISC) arquitecturas, como la Digital Equipment Corporation (DEC) VAX , el tratamiento de los registros y los literales / constantes inmediata como otro modo de direccionamiento. Others, such as the IBM System/390 and most reduced instruction set computer (RISC) designs, encode this information within the instruction.Otros, como el IBM System/390 y la mayora de instrucciones de la computadora conjunto reducido (RISC) disea, codificar esta informacin dentro de la instruccin. Thus, the latter machines have three distinct instruction codes for copying one register to another, copying a literal constant into a register, and copying the contents of a memory location into a register, while the VAX has only a single "MOV" instruction. As, las mquinas de esta ltima tiene tres cdigos de instruccin distinta para copiar un registro a otro, la copia literal de una constante en un registro, y copiar el contenido de una posicin de memoria en un registro, mientras que el VAX tiene solamente una sola "MOV" instruccin. The term "addressing mode" is itself subject to different interpretations: either "memory address calculation mode" or "operand accessing mode".El trmino "modo de direccin" se est sujeto a diferentes interpretaciones: o bien "direccin de memoria el modo de clculo" o "modo de acceso operando". Under the first interpretation instructions that do not read from memory or write to memory (such as "add literal to register") are considered not to have an "addressing mode". Bajo las instrucciones de la primera interpretacin que no se lee de la memoria o escribir en la memoria (como "aadir literal a registrar") se considerar que no tienen un modo de "hacer frente". The second interpretation allows for machines such as VAX which use operand mode bits to allow for a literal operand. La segunda interpretacin permite mquinas tales como VAX que utilizan operando bits de modo de permitir un operando literal. Only the first interpretation applies to instructions such as "load effective address". Slo la

Pgina 305

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

primera interpretacin se aplica a las instrucciones tales como "direccin efectiva de carga". The addressing modes listed below are divided into code addressing and data addressing.Los modos de direccionamiento se enumeran a continuacin se dividen en cdigo de abordar y tratar los datos. Most computer architectures maintain this distinction, but there are, or have been, some architectures which allow (almost) all addressing modes to be used in any context. La mayora de arquitecturas de computadora mantener esta distincin, pero hay, o lo hayan sido en algunas arquitecturas que permiten (casi) todos los modos de direccionamiento para ser utilizado en cualquier contexto. The instructions shown below are purely representative in order to illustrate the addressing modes, and do not necessarily reflect the mnemonics used by any particular computer.Las instrucciones que se muestran a continuacin son puramente representativas a fin de ilustrar los modos de direccionamiento, y no necesariamente reflejan los mnemnicos utilizados en cualquier ordenador en particular. Different computer architectures vary greatly as to the number of addressing modes they provide in hardware.Diferentes arquitecturas de equipo varan mucho en cuanto al nmero de modos de direccionamiento que ofrecen en el hardware. There are some benefits to eliminating complex addressing modes and using only one or a few simpler addressing modes, even though it requires a few extra instructions, and perhaps an extra register.
needed ] [ 1 ]

It has proven

[ citation

much easier to design pipelined CPUs if the only addressing modes

available are simple ones. Hay algunos beneficios para la eliminacin de complejos modos de direccionamiento y el uso de slo uno o unos pocos simples modos de direccionamiento, a pesar de que requiere una instruccin de extras, y tal vez un registro adicional. Se ha demostrado mucho ms fcil disear pipeline CPU si los modos disponibles son slo la atencin de los simples.

Pgina 306

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Most RISC machines have only about five simple addressing modes, while CISC machines such as the DEC VAX supermini have over a dozen addressing modes, some of which are quite complicated.Mayora de las mquinas RISC slo tienen alrededor de cinco modos de abordar simple, mientras que las mquinas CISC como el supermini VAX diciembre con ms de una docena de modos de direccionamiento, algunos de los cuales son muy complejos. The IBM System/360 mainframe had only three addressing modes; a few more have been added for the System/390 . El IBM System/360 mainframe slo contaba con tres modos de direccin, unos pocos se han aadido ms para el System/390 . When there are only a few addressing modes, the particular addressing mode required is usually encoded within the instruction code (eg IBM System/390, most RISC).Cuando hay slo un pocos modos de direccionamiento, el modo particular atendiendo requerido es generalmente codificada en el cdigo de instruccin (por ejemplo, IBM System/390, la mayora de RISC). But when there are lots of addressing modes, a specific field is often set aside in the instruction to specify the addressing mode. Pero cuando hay un montn de modos de direccionamiento, un campo especfico es a menudo de lado en la instruccin para especificar el modo de direccionamiento. The DEC VAX allowed multiple memory operands for almost all instructions, and so reserved the first few bits of each operand specifier to indicate the addressing mode for that particular operand. El VAX diciembre permiti varios operandos de memoria para casi todas las instrucciones, y as reservados los primeros bits de cada especificador de operando para indicar el modo de direccionamiento para que operando en particular. Even on a computer with many addressing modes, measurements of actual programs
[ citation needed ]

indicate that the simple addressing modes listed below

account for some 90% or more of all addressing modes used. Incluso en un equipo con muchos modos de direccionamiento, las mediciones de los programas actuales indican que los modos de direccionamiento simple que
Pgina 307

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

figuran a continuacin representan alrededor del 90% o ms de todos los modos de direccionamiento utilizado. Since most such measurements are based on code generated from high-level languages by compilers, this reflects to some extent the limitations of the compilers being used.
[2]

Como la mayora

de estas mediciones se basan en el cdigo generado a partir de lenguajes de alto nivel por los compiladores, esto refleja en cierta medida las limitaciones de los compiladores utilizados. [ edit ] Useful side effectEfecto secundario muy til Some processors, such as Intel x86 and the IBM/390, have a Load effective address instruction.Algunos procesadores, como Intel x86 y IBM/390, tienen carga efectiva una instruccin de direccionamiento. This performs a calculation of the effective operand address, but instead of acting on that memory location, it loads the address that would have been accessed into a register. Se realiza un clculo de la direccin del operando eficaz, pero en vez de actuar en esa localidad de memoria, se carga la direccin que se haya accedido a un registro. This can be useful when passing the address of an array element to a subroutine. Esto puede ser til cuando se pasa la direccin de un elemento de la matriz a una subrutina. It may also be a slightly sneaky way of doing more calculation than normal in one instruction; for example, using such an instruction with the addressing mode "base+index+offset" (detailed below) allows one to add two registers and a constant together in one instruction. Tambin puede ser una manera un poco disimulada de hacer ms clculos de lo normal en una instruccin, por ejemplo, utilizando como una instruccin con el modo de direccionamiento "+ base + ndice de desplazamiento" (detalladas ms abajo) permite aadir dos registros y una constante en conjunto en una instruccin. [ edit ] Simple addressing modes for codeSimple modos de direccionamiento para el cdigo [ edit ] AbsoluteAbsoluto +----+------------------------------+ +----+------------------------------+
Pgina 308

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

|jump|

address

| | Ir | | Direccin

+----+------------------------------+ +----+------------------------------+ (Effective PC address = address) (Direccin efectiva PC = direccin) The effective address for an absolute instruction address is the address parameter itself with no modifications.La direccin efectiva de una direccin de la instruccin absoluta es el parmetro de direccin s mismo sin modificaciones. [ edit ] PC-relativeRelativo al PC +----+------------------------------+ +----+------------------------------+ |jump| offset | jump relative | | Ir offset | saltar relativa +----+------------------------------+ +----+------------------------------+ (Effective PC address = next instruction address + offset, offset may be negative) (Direccin efectiva PC = direccin de la instruccin siguiente + offset, desplazamiento puede ser negativo) The effective address for a PC -relative instruction address is the offset parameter added to the address of the next instruction.La direccin efectiva de una PC de instrucciones direccin relativa-es el parmetro offset aadido a la direccin de la siguiente instruccin. This offset is usually signed to allow reference to code both before and after the instruction. Este desplazamiento es generalmente firmados para permitir al cdigo de referencia antes y despus de la instruccin. This is particularly useful in connection with jumps, because typical jumps are to nearby instructions (in a high-level language most if or while statements are reasonably short).Esto es particularmente til en relacin con saltos, porque salta tpicas son cercanas a las instrucciones (en un lenguaje de alto nivel o la mayora, si bien las declaraciones son razonablemente corto). Measurements of actual programs suggest that an 8 or 10 bit offset is large enough for some 90% of conditional jumps
[ citation needed ]

. Las mediciones de los programas

Pgina 309

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

actuales sugieren que unos 8 o 10 bits desplazamiento es lo suficientemente grande como para un 90% de saltos condicionales. Another advantage of program-relative addressing is that the code may be position-independent , ie it can be loaded anywhere in memory without the need to adjust any addresses.Otra ventaja del programa de direccionamiento relativo es que el cdigo puede ser independiente de la posicin , es decir, se pueden cargar en cualquier lugar de la memoria sin la necesidad de ajustar todas las direcciones. Some versions of this addressing mode may be conditional referring to two registers ("jump if reg1==reg2"), one register ("jump unless reg1==0") or no registers, implicitly referring to some previously-set bit in the status register .Algunas versiones de este modo de direccionamiento puede ser condicional se refiere a dos registros ("saltar si REG1 == reg2"), un registro ("ir a menos REG1 == 0") o de los registros no, de manera implcita, referente a algunos poco previamente establecidos en el registro de estado . See also conditional execution below. Vase tambin la ejecucin condicional de abajo. [ edit ] Register indirectRegistro indirectos +-------+-----+ +-------+-----+ |jumpVia| reg | | | JumpVia reg | +-------+-----+ +-------+-----+ (Effective PC address = contents of register 'reg') (Contenido direccin efectiva = PC de registro 'reg) The effective address for a Register indirect instruction is the address in the specified register.La direccin efectiva de una instruccin de registro indirecto es la direccin en el registro especificado. For example, (A7) to access the content of address register A7. Por ejemplo, (A7) para acceder al contenido del registro de direccin A7.

Pgina 310

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

The effect is to transfer control to the instruction whose address is in the specified register.El efecto es transferir el control a la instruccin cuya direccin est en el registro especificado. Many RISC machines have a subroutine call instruction that places the return address in an address registerthe register indirect addressing mode is used to return from that subroutine call.Muchas mquinas RISC tienen una instruccin de llamada a subrutina que coloca a la direccin de retorno en un registro de direccin-el registro indirecto modo de direccionamiento se utiliza para devolver a esa llamada subrutina. [ edit ] Sequential addressing modesSecuencial modos de direccionamiento [ edit ] sequential executionEjecucin secuencial. +------+ +------+ | nop | instruccin +------+ +------+ (Effective PC address = next instruction address) (Direccin efectiva PC = direccin de la instruccin siguiente) The CPU, after executing a sequential instruction, immediately executes the following instruction.La CPU, despus de ejecutar una instruccin secuencial, de inmediato se ejecuta la siguiente instruccin. Sequential execution is not considered to be an addressing mode on some computers.Ejecucin secuencial no se considerada como un modo de direccin en algunos equipos. Most instructions on most CPU architectures are sequential instructions.La mayora de las instrucciones en la mayora de las arquitecturas de CPU son instrucciones secuenciales. Because most instructions are sequential instructions, CPU designers often add features that deliberately sacrifice performance on the other instructionsbranch instructionsin order to make
Pgina 311

execute the following instruction | Nop | ejecutar la siguiente

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

these sequential instructions run faster. Porque la mayora de las instrucciones son las instrucciones secuenciales, los diseadores de la CPU a menudo aaden caractersticas que deliberadamente sacrificar el rendimiento por el otro las instrucciones de la rama instrucciones, a fin de que estas instrucciones secuenciales correr ms rpido. Conditional branches load the PC with one of 2 possible results, depending on the conditionmost CPU architectures use some other addressing mode for the "taken" branch, and sequential execution for the "not taken" branch.Ramas de carga condicional de la PC con una de 2 resultados posibles, dependiendo de la condicin-la mayora de los CPU arquitecturas se utiliza algn otro modo de direccionamiento para el "tomado" rama, y la ejecucin secuencial para el "no tomar" sucursal. Many features in modern CPUs -- instruction prefetch and more complex pipelineing , Out-of-order execution , etc. -- maintain the illusion that each instruction finishes before the next one begins, giving the same final results, even though that's not exactly what happens internally.Muchas de las funciones en los CPU modernos - prefetch de instrucciones y ms compleja pipelineing , fuera de la orden de ejecucin , etc - se mantenga la ilusin de que cada instruccin finaliza antes que se inicia el prximo, dando el mismo resultado final, a pesar de que no es exactamente lo que sucede internamente. Each " basic block " of such sequential instructions exhibits both temporal and spatial locality of reference .Cada " bloque bsico "de tales instrucciones secuenciales exposiciones tanto temporales como espaciales localidad de referencia . CPUs that do not use sequential execution are extremely rarethey include some drum memory computers and the RTX 32P , which has no program counter.
[ 3 ]

CPUs que no utilizan la ejecucin secuencial son extremadamente

raras-que incluyen algunos memoria de tambor los ordenadores y el 32P RTX , que no tiene contador de programa. [ edit ] conditional executionEjecucin condicional.
Pgina 312

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Some computer architectures (eg ARM ) have conditional instructions which can in some cases obviate the need for conditional branches and avoid flushing the instruction pipeline .Algunas arquitecturas de computadora (por ejemplo, ARM ) tienen instrucciones condicionales que en algunos casos puede obviar la necesidad de saltos condicionales y evitar el lavado de la tubera de instruccin . An instruction such as a 'compare' is used to set a condition code , and subsequent instructions include a test on that condition code to see whether they are obeyed or ignored. Una instruccin como una "comparar" se utiliza para establecer un cdigo de condicin , y las instrucciones posteriores incluyen una prueba de que el cdigo de estado para ver si se cumplen o se ignoran. [ edit ] skipSaltar +------+-----+-----+ +------+-----+-----+ |skipEQ| reg1| reg2| skip the following instruction if reg1=reg2 | SkipEQ | REG1 | reg2 | saltar la siguiente instruccin si REG1 = reg2 +------+-----+-----+ +------+-----+-----+ (Effective PC address = next instruction address + 1) (Direccin efectiva PC = direccin de la instruccin siguiente + 1) Skip addressing may be considered a special kind of PC-relative addressing mode with a fixed "+1" offset.Pasar frente se puede considerar un tipo especial de direccionamiento relativo al PC con un modo de fijar "un" offset. Like PCrelative addressing, some CPUs have versions of this addressing mode that only refer to one register ("skip if reg1==0") or no registers, implicitly referring to some previously-set bit in the status register . Al igual que PC-direccionamiento relativo, algunos CPUs tienen versiones de este modo de direccionamiento que slo se refieren a un registro ("saltar si REG1 == 0") o si no se registra, de manera implcita, referente a algunos-bit previamente en el registro de estado . Other CPUs have a version that selects a specific bit in a specific byte to test ("skip if bit 7 of reg12 is 0"). CPU, otras tienen una versin que selecciona un
Pgina 313

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

poco especfica en un byte especfico para la prueba ("saltar si el bit 7 de la reg12 es 0"). Unlike all other conditional branches, a "skip" instruction never needs to flush the instruction pipeline . A diferencia de otras ramas condicionales, un contenedor "no necesita instrucciones para limpiar la tubera de instruccin . [ edit ] Simple addressing modes for dataSimple modos de direccionamiento de datos [ edit ] Register Registro +------+-----+-----+-----+ +------+-----+-----+-----+ | mul | reg1| reg2| reg3| REG1: * = reg2 reg3; +------+-----+-----+-----+ +------+-----+-----+-----+ This "addressing mode" does not have an effective address and is not considered to be an addressing mode on some computers.Este modo de "hacer frente" no tiene una direccin efectiva y no se considera como un modo de direccin en algunos equipos. In this example, all the operands are in registers, and the result is placed in a register.En este ejemplo, todos los operandos estn en registros, y el resultado se coloca en un registro. [ edit ] Base plus offset, and variationsBase ms desplazamiento y las variaciones This is sometimes referred to as 'base plus displacement'Esto se refiere a veces como "base ms desplazamiento" +------+-----+-----+----------------+ +------+-----+-----+----------------+ | load | reg | base| offset | reg := RAM[base + offset] de carga | | reg base | | offset reg |: = base de RAM [+ desplazamiento] +------+-----+-----+----------------+ +------+-----+-----+----------------+ reg1 := reg2 * reg3; | | Mul REG1 | reg2 | reg3 |

Pgina 314

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

(Effective address = offset + contents of specified base register) (Direccin efectiva = offset + contenido del registro base especificada) The offset is usually a signed 16-bit value (though the 80386 expanded it to 32 bits).El desplazamiento es por lo general un valor de 16-bit firmado (aunque el 80386 se ampli a 32 bits). If the offset is zero, this becomes an example of register indirect addressing; the effective address is just the value in the base register.Si el desplazamiento es cero, esto se convierte en un ejemplo de registro de direccionamiento indirecto, la direccin efectiva es slo el valor en el registro de base. On many RISC machines, register 0 is fixed at the value zero.En muchas mquinas RISC, el registro 0 se fija en el valor cero. If register 0 is used as the base register, this becomes an example of absolute addressing . Si el registro 0 se usa como base el registro, esto se convierte en un ejemplo de la necesidad absoluta. However, only a small portion of memory can be accessed (64 kilobytes , if the offset is 16 bits). Sin embargo, slo una pequea porcin de la memoria se puede acceder (64 kilobytes , si el desplazamiento es de 16 bits). The 16-bit offset may seem very small in relation to the size of current computer memories (which is why the 80386 expanded it to 32-bit).El desplazamiento de 16 bits puede parecer muy pequea en relacin con el tamao de memorias de las computadoras actuales (por lo que el 80386 se ampli a 32 bits). It could be worse: IBM System/360 mainframes only have an unsigned 12-bit offset. Podra ser peor: los mainframes IBM System/360 slo tienen un signo de 12-bit de compensacin. However, the principle of locality of reference applies: over a short time span, most of the data items a program wants to access are fairly close to each other. Sin embargo, el principio de localidad de referencia se aplica: ms de un corto perodo de tiempo, la mayora de los elementos de datos de un programa quiere acceder se encuentran bastante cerca el uno al otro.

Pgina 315

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

This addressing mode is closely related to the indexed absolute addressing moEste modo de direccionamiento est estrechamente relacionado con el ndice modo absoluto direccionamiento. Example 1 : Within a subroutine a programmer will mainly be interested in the parameters and the local variables, which will rarely exceed 64 KB , for which one base register (the frame pointer ) suffices.Ejemplo 1: En una subrutina un programador ser principalmente interesados en los parmetros y las variables locales, que raramente superar los 64 KB , por lo que un registro de base (el puntero ) basta. If this routine is a class method in an object-oriented language, then a second base register is needed which points at the attributes for the current object ( this or self in some high level languages). Si esta rutina es un mtodo de clase de un lenguaje orientado a objeto, a continuacin, un registro de la segunda base es necesario que los puntos en los atributos para el objeto actual (presente o por cuenta propia en algunos lenguajes de alto nivel). Example 2 : If the base register contains the address of a composite type (a record or structure), the offset can be used to select a field from that record (most records/structures are less than 32 kB in size).Ejemplo 2: Si el registro base contiene la direccin de un tipo compuesto (un registro o estructura), el desplazamiento puede ser usado para seleccionar un campo de ese registro (la mayora de los documentos y las estructuras son menos de 32 KB de tamao). [ edit ] Immediate/literalInmediata / literal +------+-----+-----+----------------+ +------+-----+-----+----------------+ | add | reg1| reg2| constant | reg1 := reg2 + constant; | | Aadir REG1 | reg2 | constante | REG1: = + reg2 constante; +------+-----+-----+----------------+ +------+-----+-----+----------------+ This "addressing mode" does not have an effective address, and is not considered to be an addressing mode on some computers.Este modo de "hacer frente" no tiene una direccin efectiva, y no se considera como un modo de direccin en algunos equipos.

Pgina 316

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

The constant might be signed or unsigned.La constante puede ser con o sin signo. For example move.l #$FEEDABBA, D0 to move the immediate hex value of "FEEDABBA" into register D0. Por ejemplo # $ D0 move.l FEEDABBA, para mover el valor hexadecimal de inmediato "FEEDABBA" en D0 registro. Instead of using an operand from memory, the value of the operand is held within the instruction itselfEn lugar de utilizar un operando de la memoria, el valor del operando se lleva a cabo dentro de la propia instruccin. On the DEC VAX machine, the literal operand sizes could be 6, 8, 16, or 32 bits long. En el equipo DEC VAX, el tamao operando literal podra ser 6, 8, 16, o 32 bits de largo. Andrew Tanenbaum showed that 98% of all the constants in a program would fit in 13 bits (see RISC design philosophy ).Andrew Tanenbaum mostr que el 98% de todas las constantes en un programa que cabe en 13 bits (ver filosofa de diseo RISC ). [ edit ] Implicitimplcita +-----------------+ +-----------------+ | clear carry bit | | Llevan clara | bits +-----------------+ +-----------------+ The implied addressing mode [1] , also called the implicit addressing mode X86 assembly language , does not explicitly specify an effective address for either the source or the destination (or sometimes both).El modo de direccionamiento implcito, tambin llamado modo de direccionamiento implcito X86 lenguaje ensamblador , no se especifica explcitamente una direccin efectiva para el origen o el destino (o en ocasiones ambos). Either the source (if any) or destination effective address (or sometimes both) is implied by the opcode.O bien la fuente (si cualquier direccin) o destino efectivo (o en ocasiones ambos) est implcito en el cdigo de operacin. Implied addressing was quite common on older computers (up to mid1970s).Implicado abordar era muy comn en ordenadores antiguos (hasta
Pgina 317

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

mediados de 1970). Such computers typically had only a single register in which arithmetic could be performedthe accumulator. Estos equipos solan tener slo un registro nico en el que la aritmtica se podra realizar-el acumulador. Such accumulator machines implicitly reference that accumulator in almost every instruction. Estas mquinas acumulador acumulador implcita referencia que en casi todas las instrucciones. For example, the operation <a := b + c;> can be done using the sequence <load b; add c; store a;> -- the destination (the accumulator) is implied in every "load" and "add" instruction; the source (the accumulator) is implied in every "store" instruction. Por ejemplo, la operacin <a := c;> b + se puede hacer utilizando la secuencia de aadir b; <Cargar c; a;> tienda - el destino (el acumulador) est implcita en cada carga "y" aadir " instruccin; la fuente (el acumulador) est implcita en todas las tiendas "de instrucciones. Later computers generally had more than one general purpose register or RAM location which could be the source or destination or both for arithmeticand so later computers need some other addressing mode to specify the source and destination of arithmetic.Ms tarde los ordenadores en general, haba ms de un registro de propsito general o RAM lugar que podra ser el origen o destino o ambos para la aritmtica y ms tarde algunos ordenadores necesitan hacer frente a otro modo para especificar el origen y el destino de la aritmtica. Many computers (such as x86 and AVR) have one special-purpose register called the stack pointer which is implicitly incremented or decremented when pushing or popping data from the stack, and the source or destination effective address is (implicitly) the address stored in that stack pointer.Muchos ordenadores (por ejemplo, x86 y AVR) tienen un registro de propsito especial que se denomina puntero de pila que est implcitamente aumentar o disminuir al empujar o hacer estallar los datos de la pila, y el origen o destino es la direccin efectiva (implcitamente) la direccin almacenada en que puntero de pila.

Pgina 318

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Most 32-bit computers (such as ARM and PowerPC) have more than one register which could be used as a stack pointerand so use the "register autoincrement indirect" addressing mode to specify which of those registers should be used when pushing or popping data from a stack.La mayora de las computadoras de 32-bit (tales como ARM y PowerPC) tienen ms de un registro que podra ser utilizado como un puntero de pila, y as usar el "autoincrement registro indirecto" modo de direccionamiento para especificar cul de estos registros se debe utilizar al empujar o hacer estallar datos de una pila. Some current computer architectures (eg IBM/390 and Intel Pentium) contain some instructions with implicit operands in order to maintain backwards compatibility with earlier designs.Algunas arquitecturas informticas actuales (por ejemplo, IBM/390 y Pentium de Intel) contienen algunas instrucciones con operandos implcitos con el fin de mantener la compatibilidad con diseos anteriores. On many computers, instructions that flip the user/system mode bit, the interrupt-enable bit, etc. implicitly specify the special register that holds those bits.En muchos ordenadores, las instrucciones que dar la vuelta al usuario / bit de modo del sistema, la interrupcin a habilitar bits, etc implcitamente especificar el registro especial que contiene los bits. This simplifies the hardware necessary to trap those instructions in order to meet the Popek and Goldberg virtualization requirements -- on such a system, the trap logic does not need to look at any operand (or at the final effective address), but only at the opcode. Esto simplifica el hardware necesario para atrapar esas instrucciones con el fin de satisfacer las necesidades de virtualizacin y Popek Goldberg - sobre dicho sistema, la lgica trampa no necesita mirar en cualquier operando (o en la direccin efectiva final), pero slo en el cdigo de operacin. A few CPUs have been designed where every operand is always implicitly specified in every instruction -- zero-operand CPUs.Una CPU pocas han sido

Pgina 319

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

diseadas en el que cada operando es siempre implcitamente especificados en cada instruccin - cero operando CPUs. [ edit ] Other addressing modes for code or dataOtros modos de direccin para el cdigo o datos [ edit ] Absolute/DirectAbsoluto / Direct +------+-----+--------------------------------------+ +------------------------------------ - + | load | reg | address | de carga | | reg | | direccin +------+----+------+-----+--------------------------------------+ +------------------------------------ - + (Effective address = address as given in instruction) (Direccin de la direccin efectiva = tal como figura en la instruccin) This requires space in an instruction for quite a large address.Esto requiere un espacio en una instruccin de una direccin muy grande. It is often available on CISC machines which have variable-length instructions, such as x86 . A menudo se encuentra en las mquinas CISC que tienen instrucciones de longitud variable, como x86 . Some RISC machines have a special Load Upper Literal instruction which places a 16-bit constant in the top half of a register.Algunas mquinas RISC tienen una carga especial de la instruccin superior literal, que sita a los 16 bits constantes en la mitad superior de un registro. An OR literal instruction can be used to insert a 16-bit constant in the lower half of that register, so that a full 32-bit address can then be used via the register-indirect addressing mode, which itself is provided as "base-plus-offset" with an offset of 0. Toda orden literal O se puede utilizar para insertar un 16-bits constante en la mitad inferior de dicho registro, de modo que uno de 32-bit direccin completa se puede utilizar a travs del modo de direccionamiento indirecto a registrar, el cual es suministrado como "base- plus-compensar "con un desplazamiento de 0. +------+-----

Pgina 320

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

[ edit ] Indexed absoluteIndexadas absolutas +------+-----+-----+--------------------------------+ +------------------------------ - + | load | reg |index| address | | | Carga reg | ndice | Direccin | +------+-----+----+------+-----+-----+--------------------------------+ +------------------------------ - + (Effective address = address + contents of specified index register) (Direccin efectiva = contenido + direccin del registro de ndice especificado) This also requires space in an instruction for quite a large address.Esto tambin requiere un espacio en una instruccin de una direccin muy grande. The address could be the start of an array or vector, and the index could select the particular array element required. La direccin podra ser el comienzo de una matriz o un vector, y el ndice podra seleccionar el elemento de la matriz hace caso. The processor may scale the index register to allow for the size of each array element . El procesador puede escalar el ndice de registro para permitir el tamao de cada elemento de la matriz . Note that this is more or less the same as base-plus-offset addressing mode, except that the offset in this case is large enough to address any memory location.Tenga en cuenta que esto es ms o menos lo mismo que la base-mscompensar el modo de direccionamiento, excepto que el desplazamiento es en este caso lo suficientemente grande como para hacer frente a cualquier posicin de memoria. Example 1 : Within a subroutine, a programmer may define a string as a local constant or a static variable . Ejemplo 1: En una subrutina, un programador puede definir una cadena como una constante local o una variable esttica . The address of the string is stored in the literal address in the instruction. La direccin de la cadena se almacena en la direccin literal en la instruccin. The offsetwhich character of the string to use on this iteration of a loopis stored +------+-----+-----

Pgina 321

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

in the index register. El desplazamiento de caracteres que de la cadena para su uso en esta iteracin de un bucle, se almacena en el registro de ndice. Example 2 : A programmer may define several large arrays as globals or as class variables . Ejemplo 2: Un programador puede definir varios conjuntos grandes como globales o variables de clase . The start of the array is stored in the literal address (perhaps modified at program-load time by a relocating loader ) of the instruction that references it. El inicio de la matriz se almacena en la direccin literal (tal vez modificado en el tiempo del programa de carga por un cargador de reubicacin ) de la instruccin que hace referencia a ella. The offsetwhich item from the array to use on this iteration of a loopis stored in the index register. El desplazamiento, que elemento de la matriz para su uso en esta iteracin de un bucle, se almacena en el registro de ndice. Often the instructions in a loop re-use the same register for the loop counter and the offsets of several arrays. A menudo, las instrucciones en un bucle de volver a utilizar el mismo registro para el contador de bucle y los desplazamientos de varias matrices. [ edit ] Base plus indexBase ms ndice +------+-----+-----+-----+ +------+-----+-----+-----+ | load | reg | base|index| | | Carga reg | Base | ndice | +------+-----+-----+-----+ +------+-----+-----+-----+ (Effective address = contents of specified base register + contents of specified index register) (Contenido de la direccin efectiva de la base = especifica el contenido del registro + de registro de ndice especificado) The base register could contain the start address of an array or vector, and the index could select the particular array element required.El registro base puede contener la direccin de inicio de una matriz o un vector, y el ndice podra seleccionar el elemento de la matriz hace caso. The processor may scale the index register to allow for the size of each array element . El procesador puede escalar el ndice de registro para permitir el tamao de cada elemento de la
Pgina 322

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

matriz . This could be used for accessing elements of an array passed as a parameter. Esto podra ser usado para acceder a los elementos de un array pasado como parmetro. [ edit ] Base plus index plus offsetBase ms ndice ms desplazamiento +------+-----+-----+-----+----------------+ +------+-----+-----+-----+----------------+ | load | reg | base|index| offset | | | Carga reg | Base | | ndice offset | +------+-----+-----+-----+----------------+ +------+-----+-----+-----+----------------+ (Effective address = offset + contents of specified base register + contents of specified index register) (Direccin efectiva = offset + contenidos de la base especifica el contenido del registro + de registro de ndice especificado) The base register could contain the start address of an array or vector of records, the index could select the particular record required, and the offset could select a field within that record.El registro base puede contener la direccin de inicio de una matriz o un vector de registros, el ndice podra seleccionar el registro particular, el deber, y la compensacin podra seleccionar un campo dentro de ese registro. The processor may scale the index register to allow for the size of each array element . El procesador puede escalar el ndice de registro para permitir el tamao de cada elemento de la matriz . [ edit ] ScaledEscalado +------+-----+-----+-----+ +------+-----+-----+-----+ | load | reg | base|index| | | Carga reg | Base | ndice | +------+-----+-----+-----+ +------+-----+-----+-----+ (Effective address = contents of specified base register + scaled contents of specified index register) (Contenido de la direccin efectiva de la base = especifica el contenido del registro + a escala del registro de ndice especificado)

Pgina 323

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

The base register could contain the start address of an array or vector, and the index could contain the number of the particular array element required.El registro base puede contener la direccin de inicio de una matriz o un vector, y el ndice podra contener el nmero del elemento de la matriz hace caso. This addressing mode dynamically scales the value in the index register to allow for the size of each array element, eg if the array elements are double precision floating-point numbers occupying 8 bytes each then the value in the index register is multiplied by 8 before being used in the effective address calculation.Este modo de direccionamiento dinmico escalas el valor en el ndice de registro para permitir el tamao de cada elemento de la matriz, por ejemplo, si los elementos de matriz de doble precisin son nmeros de punto flotante que ocupa 8 bytes cada uno, entonces el valor en el registro de ndice se multiplica por 8, antes de ser utilizados en el clculo de la direccin efectiva. The scale factor is normally restricted to being a power of two , so that shifting rather than multiplication can be used. El factor de escala normalmente se limita a ser una potencia de dos , de modo que cambiar en lugar de la multiplicacin se puede utilizar. [ edit ] Register indirectRegistro indirectos +------+-----+-----+ +------+-----+-----+ | load | reg | base| de carga | | reg | | base +------+-----+-----+ +------+-----+-----+ (Effective address = contents of base register) (Contenido de la direccin efectiva de la base = register) A few computers have this as a distinct addressing mode.A pocos equipos tienen esto como un modo de abordar distintos. Many computers just use base plus offset with an offset value of 0. Muchas computadoras slo tiene que utilizar la base ms desplazamiento, con un valor de desplazamiento de 0. For example, (A7) Por ejemplo, (A7) [ edit ] Register autoincrement indirectAutoincrement Registro indirectos
Pgina 324

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

+------+-----+-------+ +------+-----+-------+ | load | reg | base | de carga | | reg | | base +------+-----+-------+ +------+-----+-------+ (Effective address = contents of base register) (Contenido de la direccin efectiva de la base = register) After determining the effective address, the value in the base register is incremented by the size of the data item that is to be accessed.Despus de determinar la direccin efectiva, el valor en el registro de base se incrementa en el tamao del elemento de datos que se va a acceder. For example, (A7)+ would access the content of the address register A7, then increase the address pointer of A7 by 1 (usually 1 word). Por ejemplo, (A7) + podra acceder al contenido de la direccin del registro A7, a continuacin, aumentar el puntero de direccin de la A7 en 1 (generalmente de 1 palabra). Within a loop, this addressing mode can be used to step through all the elements of an array or vector. Dentro de un bucle, este modo de direccionamiento se puede utilizar para pasar por todos los elementos de una matriz o un vector. In high-level languages it is often thought to be a good idea that functions which return a result should not have side effects (lack of side effects makes program understanding and validation much easier).En lenguajes de alto nivel a menudo se piensa que es una buena idea que las funciones que devuelven un resultado no debe tener efectos secundarios (falta de efectos secundarios hace que la comprensin y validacin del programa mucho ms fcil). This addressing mode has a side effect in that the base register is altered. Este modo de direccionamiento tiene un efecto secundario de que el registro de base se ve alterada. If the subsequent memory access causes an error (eg page fault, bus error, address error) leading to an interrupt, then restarting the instruction becomes much more problematic since one or more registers may need to be set back to the state they were in before the instruction originally started. Si el acceso a la memoria subsecuente, provoca un error (por ejemplo error de
Pgina 325

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

pgina, error del bus, error de direccin) que conduce a una interrupcin se convierte, a continuacin, reiniciar la instruccin mucho ms problemtico, ya que uno o ms ficheros puede ser necesario retroceder al estado que tenan antes de la instruccin comenz originalmente. There have been at least two computer architectures which have had implementation problems with regard to recovery from interrupts when this addressing mode is used:Ha habido por lo menos dos arquitecturas de computadora que han tenido problemas de aplicacin con respecto a la recuperacin de interrupciones cuando este modo de direccionamiento se utiliza:

Motorola 68000(address is represented in 24 bits).Motorola 68000 (la direccin est representado en 24 bits). Could have one or two autoincrement register operands. Podra haber uno o dos operandos registro autoincrement. The 68010 + resolved the problem by saving the processor's internal state on bus or address errors. El 68010 + resuelto el problema por el ahorro interno de estado del procesador en el autobs o la direccin errores.

DEC VAX.Diciembre VAX. Could have up to 6 autoincrement register operands. Podra tener hasta 6 operandos autoincrement registro. Each operand access could cause two page faults (if operands happened to straddle a page boundary). Cada acceso operando podra causar dos fallos de pgina (si operandos pas a horcajadas un lmite de pgina). Of course the instruction itself could be over 50 bytes long and might straddle a page boundary as well! Por supuesto, la instruccin en s podra ser ms de 50 bytes de longitud y podra horcajadas un lmite de pgina tambin!

[ edit ] Autodecrement register indirectAutodecrement registro indirecto +------+-----+-----+ +------+-----+-----+ | load | reg | base| de carga | | reg | | base +------+-----+-----+ +------+-----+-----+
Pgina 326

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

(Effective address = new contents of base register) (Direccin efectiva = nuevos contenidos de la base de registro) Before determining the effective address, the value in the base register is decremented by the size of the data item which is to be accessed.Antes de determinar la direccin efectiva, el valor en el registro de base se disminuye en el tamao del elemento de datos que ha de ser visitada. Within a loop, this addressing mode can be used to step backwards through all the elements of an array or vector.Dentro de un bucle, este modo de direccionamiento se puede utilizar para el paso hacia atrs por todos los elementos de una matriz o un vector. A stack can be implemented by using this mode in conjunction with the previous addressing mode (autoincrement). Una pila se puede implementar mediante el uso de este modo en relacin con el modo anterior de direccionamiento (autoincrement). See the discussion of side-effects under the autoincrement addressing mode .Vase el anlisis de los efectos secundarios en el marco del autoincrement modo de direccionamiento . [ edit ] Memory indirectMemorias indirectas Any of the addressing modes mentioned in this article could have an extra bit to indicate indirect addressing, ie the address calculated using some mode is in fact the address of a location (typically a complete word ) which contains the actual effective address.Cualquiera de los modos de direccionamiento mencionado en este artculo podra tener un poco extra para indicar el direccionamiento indirecto, es decir, la direccin calculada utilizando algn modo es de hecho la direccin de una ubicacin (por lo general un completo palabra), que contiene la direccin efectiva real. Indirect addressing may be used for code or data.Direccionamiento indirecto se puede utilizar para el cdigo o datos. It can make implementation of pointers or references or handles much easier , and can also make it easier to call
Pgina 327

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

subroutines which are not otherwise addressable. Puede hacer que la aplicacin de los punteros o referencias o maneja mucho ms fcil, y tambin puede hacer que sea ms fcil llamar a subrutinas que no son otra cosa direccionales. Indirect addressing does carry a performance penalty due to the extra memory access involved. Direccionamiento indirecto lleva una reduccin del rendimiento debido al acceso a la memoria adicionales asociados. Some early minicomputers (eg DEC PDP-8 , Data General Nova ) had only a few registers and only a limited addressing range (8 bits). Algunas minicomputadoras temprana (p. ej diciembre PDP-8 , Data General Nova ) tena slo un pocos registros y slo una gama limitada frente a (8 bits). Hence the use of memory indirect addressing was almost the only way of referring to any significant amount of memory. De ah el uso de la memoria direccionamiento indirecto era casi la nica manera de referirse a una cantidad significativa de memoria. [ edit ] PC-relativeRelativo al PC +------+------+---------+----------------+ +------+------+---------+----------------+ | load | reg1 | base=PC | offset | reg1 := RAM[PC + offset] | Carga | REG1 base | | PC = offset | REG1: = [+ RAM PC desplazamiento] +------+------+---------+----------------+ +------+------+---------+----------------+ (Effective address = PC + offset) (Direccin efectiva = + PC offset) The PC-relative addressing mode is used to load a register from a "constant" stored in program memory a short distance away from the current instruction.El modo de PC-direccionamiento relativo se utiliza para cargar un registro de una "constante" almacenado en la memoria del programa a una corta distancia de la enseanza actual. It can be seen as a special case of the "base plus offset" addressing mode, one that selects the program counter (PC) as the "base register". Puede ser visto como un caso especial de la base ", adems de

Pgina 328

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

compensar" modo de direccionamiento, una que selecciona el contador de programa (PC) como el registro de base ". There are a few CPUs that support PC-relative data loads.Hay una CPU pocos que el apoyo en relacin PC-carga datos. Such CPUs include: CPU, tales como: The x86-64 architecture supports "RIP-relative" addressing, which uses the 64bit instruction pointer RIP as a base register.El x86-64 soporta la arquitectura "RIP-relativa" frente a, que utiliza los 64 bits del apuntador de instruccin PIR como un registro de base. This encourages position-independent code . Esto anima -cdigo de posicin independiente . The ARM architecture supports PC-relative addressing.La arquitectura ARM apoya-direccionamiento relativo PC. When this addressing mode is used, the compiler typically places the constants in a literal pool immediately before or immediately after the subroutine that uses them, to prevent accidentally executing those constants as instructions.Cuando este modo de direccionamiento se utiliza, el compilador normalmente lugares las constantes en una piscina literal inmediatamente antes o inmediatamente despus de la subrutina que los usa, para evitar la ejecucin accidental esas constantes como instrucciones. This addressing mode, which always modifies a data register and then sequentially falls through to execute the next instruction (the effective address points to data), should not be confused with "PC-relative branch" which does not modify any data register, but instead branches to some other instruction at the given offset (the effective address points to an executable instruction).Este modo de direccionamiento, que siempre modifica un registro de datos de forma secuencial y, a continuacin cae a travs de la ejecucin de la siguiente instruccin (los puntos de direccin efectiva a los datos), no debe confundirse con "rama relativo al PC", que no modifica ningn registro de datos, sino que ramas a una cierta instruccin en otros el desplazamiento determinado (los puntos de direccin efectiva de una instruccin ejecutable).
Pgina 329

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

[ edit ] Obsolete addressing modesObsoletos modos de direccionamiento The addressing modes listed here were used in the 19501980 time frame, but are no longer available on most current computers.Los modos de direccionamiento figuran en esta lista se utilizaron en el marco 1950-1980 tiempo, pero ya no estn disponibles en la mayora de los ordenadores actuales. This list is by no means complete; there have been many other interesting and peculiar addressing modes used from time to time, eg absoluteplus-logical-OR of two or three index registers. completa, ha habido muchos
[ citation needed

Esta lista no es modos de

interesantes

peculiares

direccionamiento y otros materiales utilizados de vez en cuando, por ejemplo, absoluta-ms-lgico-O de dos o tres registros ndice. [ edit ] Multi-level memory indirectMulti-nivel de memoria indirecta If the word size is larger than the address then the word referenced for memoryindirect addressing could itself have an indirect flag set to indicate another memory indirect cycle. Si el tamao de la palabra es ms grande que la direccin a continuacin, la palabra hace referencia a la memoriadireccionamiento indirecto poda tener un pabelln indirecto establecido para indicar otro ciclo de memoria indirecta. Care is needed to ensure that a chain of indirect addresses does not refer to itself; if it did, you could get an infinite loop while trying to resolve an address. Es preciso tener cuidado para asegurarse de que una cadena de direcciones indirectas no se refiere a s mismo, si lo hiciera, usted puede obtener un bucle infinito al intentar resolver una direccin. The IBM 1620 , the Data General Nova , and the NAR 2 each have such a multilevel memory indirect, and could enter such a infinite address calculation loop. El IBM 1620 , la Data General Nova , y la NAR 2 cada uno tiene un nivel de memoria multi indirectos, y podra entrar en una de las direcciones de bucle infinito de clculo. The memory indirect addressing mode on the Nova influenced the invention of indirect threaded code . El direccionamiento de memoria de modo indirecto en la Nova influido en la invencin del cdigo de rosca indirecta.
Pgina 330

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

The DEC PDP-10 computer with 18-bit addresses and 36-bit words allowed multi-level indirect addressing with the possibility of using an index register at each stage as well. El DEC PDP-10 con equipo bits direcciones de 18 bits y 36 palabras permite varios niveles direccionamiento indirecto con la posibilidad de utilizar un registro de ndice en cada etapa, as. [ edit ] Memory-mapped registersAsigna registros de memoriaOn some computers, the registers were regarded as occupying the first 8 or 16 words of memory (eg ICL 1900 , DEC PDP-10).En algunos equipos, los registros fueron considerados como ocupando los primeros 8 o 16 palabras de memoria (por ejemplo, ICL 1900 , DEC PDP-10). This meant that there was no need for a separate "Add register to register" instruction you could just use the "add memory to register" instruction. Esto significaba que no haba necesidad de una por separado "Agregar registro para registrar" la instruccin slo podra utilizar el "agregar memoria para registrar" la instruccin. In the case of early models of the PDP-10, which did not have any cache memory, you could actually load a tight inner loop into the first few words of memory (the fast registers in fact), and have it run much faster than if it would have in magnetic core memory. En el caso de los primeros modelos de la PDP10, que no tena ninguna memoria cach de instrumentos, se puede cargar un bucle interior apretada en las primeras palabras de la memoria (los registros de velocidad, de hecho), y que se ejecute mucho ms rpido que si hubiera en la memoria de ncleos magnticos. Later models of the DEC PDP-11 series mapped the registers onto addresses in the input/output area, but this was primarily intended to allow remote diagnostics. Los modelos posteriores del DEC PDP-11 series asignadas a las direcciones de los registros en la entrada / salida de la zona, pero esto estaba destinado en principio para permitir el diagnstico a distancia. Confusingly, the 16-bit registers were mapped onto consecutive 8-bit byte addresses. Equivocadamente, los registros de 16-bit se proyectan sobre las direcciones de bytes consecutivos de 8-bits.
Pgina 331

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

[ edit ] Memory indirect, autoincrementMemoria indirectos, autoincrement. On some early minicomputers (eg DEC PDP-8 , Data General Nova ), there were typically 16 special memory locations.
[ citation needed ]

When accessed via

memory indirect addressing, 8 would automatically increment after use and 8 would automatically decrement after use.En algunos miniordenadores temprana (por ejemplo diciembre PDP-8 , Data General Nova), hubo generalmente de 16 posiciones de memoria especial. Cuando se accede a travs de direccionamiento de memoria indirecta, 8 automticamente incrementos despus de su uso y 8 automticamente disminuir despus de su uso. This made it very easy to step through memory in loops without using any registers. Esto hace muy fcil el paso a travs de la memoria en bucles sin necesidad de utilizar ningn registro. [ edit ] Zero pagePgina Cero The Motorola 6800 family and MOS Technology 6502 family of processors were a register poor series of CISC microprocessors.El Motorola 6800 la familia y MOS Technology 6502 la familia de procesadores fueron un registro serie pobres de los microprocesadores CISC. Arithmetic and logical instructions were mostly performed against values in memory as opposed to internal registers. Aritmtica y las instrucciones lgicas se llevaron a cabo sobre todo contra los valores en la memoria en comparacin con los registros internos. As a result, instructions were generally required to include a two byte (16-bit) location to memory. Como resultado, las instrucciones se requieren generalmente para incluir una de dos bytes (16-bit) ubicacin en la memoria. Given that opcodes on these processors were only one byte (8-bit) in length, memory addresses could make up a significant part of code size. Teniendo en cuenta que los cdigos de operacin en estos procesadores eran slo un byte (8-bits) de longitud, direcciones de memoria podran constituir una parte significativa del tamao del cdigo. Designers of these processors included a partial remedy known as "zero page" addressing. Los diseadores de estos procesadores incluyen un remedio
Pgina 332

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

parcial conocido como "pgina cero" direccionamiento. The initial 256 bytes of memory ($0000 - $00FF; aka, page "0") could be accessed using a one byte absolute or indexed memory address. Los primeros 256 bytes de memoria ($ 0000 - $ 00FF; aka, pgina "0") se puede acceder usando un byte una absoluta o indexados direccin de memoria. This reduced instruction execution time by one clock cycle and instruction length by one byte. Esta instruccin se redujo el tiempo de ejecucin por ciclo de reloj y la longitud de la instruccin por un byte. By storing often used data in this region, programs could be made smaller and faster. Al almacenar los datos de uso frecuente en esta regin, los programas podran ser ms pequeos y ms rpidos. As a result, the zero page was used similar to a register file.Como resultado, la pgina cero se utiliz similar a un archivo de registro. On many systems, however, this resulted in high utilization of the zero page memory area by the operating system and user programs. En muchos sistemas, sin embargo, esto result en una alta utilizacin de la zona pgina cero de memoria por el sistema operativo y los programas de usuario. This limited its use since free space was limited. Esto limit su uso ya que el espacio libre es limitado. [ edit ] Direct pagePgina directo The zero page address mode was enhanced in several descendants of the MOS Technology 6502, including the WDC 65816 , the MOS Technology 65CE02 , and the Motorola 6809 . El modo de direccin de la pgina cero fue reforzada en varios descendientes de la escala MOS Technology 6502, incluido el WDC 65816 , el MOS Technology 65CE02 , y el Motorola 6809 . The new mode, known as "direct page" addressing, added the ability to move the 256 byte zero page memory window from the start of memory (offset address $0000) to a new location within the first 64KB of memory. El nuevo modo, conocida como "pgina directa" abordar, agreg la capacidad de mover los 256 bytes de memoria cero ventana de la pgina desde el principio de la memoria (offset direccin $ 0000) a una nueva ubicacin dentro de la primera 64KB de memoria.
Pgina 333

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

The MOS 65CE02 allowed the direct page to be moved to any 256 byte boundary within the first 64KB of memory by storing an 8-bit offset value in the new B (block) register, equivalent to the 8-bit 6809 DP (direct page) register. El 65CE02 MOS permite la pgina directo a mover a cualquier lmite de 256 bytes en el primero de 64 KB de la memoria mediante el almacenamiento de un valor de 8-bit desplazamiento en el nuevo B (bloqueo) registro, equivalente a los 8bits 6809 DP (pgina directo) registro. The WDC 65816 went a step further and allowed the direct page to be moved to any location within the first 64KB of memory by storing a 16-bit offset value in the new D (direct) register. El WDC 65816 dio un paso ms y permiti la pgina directo a mover a cualquier ubicacin dentro de la primera 64KB de memoria mediante el almacenamiento de un valor de desplazamiento de 16 bits en los nuevos D (directa) de registro. As a result, a greater number of programs were able to utilize the enhanced direct page addressing mode versus legacy processors that only included the zero page addressing mode. Como resultado, un mayor nmero de programas se pueden utilizar la pgina de mayor direccionamiento directo modo versus procesadores legado que slo se incluye la pgina cero modo de direccionamiento. [ edit ] Scaled index with bounds checkingndice de Escalada con comprobacin de lmites This is similar to scaled index addressing, except that the instruction has two extra operands (typically constants), and the hardware would check that the index value was between these bounds. Esto es similar al ndice de abordar a escala, salvo que la instruccin tiene dos operandos adicionales (por lo general constantes), y el hardware se compruebe que el valor del ndice fue entre estos lmites. 4.2.4 Lenguaje ensamblador

Pgina 334

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Lenguaje de mquina del Intel 8088. El cdigo de mquina se resalta en rojo, el equivalente en lenguaje assembler en magenta, y las direcciones de memoria donde se encuentra el cdigo, en azul. El lenguaje ensamblador es un tipo de lenguaje de bajo nivel utilizado para escribir programas informticos, y constituye la representacin ms directa del cdigo mquina especfico para cada arquitectura de computadoras legible por un programador. Fue usado principalmente en los inicios del desarrollo de software, cuando an no se contaba con los potentes lenguajes de alto nivel. Actualmente se utiliza con frecuencia en ambientes acadmicos y de investigacin, especialmente cuando se requiere la manipulacin directa de hardware, se pretenden altos rendimientos o un uso de recursos controlado y reducido. Muchos dispositivos programables (como los microcontroladores) aun cuentan con el ensamblador como la nica manera de ser manipulados.

Figura 4.26

Caractersticas El cdigo escrito en lenguaje ensamblador posee una cierta dificultad de ser entendido directamente por un ser humano ya que su estructura se acerca ms bien al lenguaje mquina, es decir, lenguaje de bajo nivel. El lenguaje ensamblador es difcilmente portable, es decir, un cdigo escrito para un microprocesador, suele necesitar ser modificado,

Pgina 335

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

muchas veces en su totalidad para poder ser usado en otra mquina distinta, aun con el mismo microprocesador. Los programas hechos en lenguaje ensamblador son generalmente ms rpidos y consumen menos recursos del sistema (memoria RAM y ROM). Al programar cuidadosamente en lenguaje ensamblador se pueden crear programas que se ejecutan ms rpidamente y ocupan menos espacio que con lenguajes de alto nivel. Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microprocesador por lo que se pueden crear segmentos de cdigo difciles de programar en un lenguaje de alto nivel. Tambin se puede controlar el tiempo en que tarda una rutina en ejecutarse, e impedir que se interrumpa durante su ejecucin. Ensambladores Un ensamblador (assembler en ingls) es un programa que crea cdigo objeto traduciendo instrucciones nemcodigos de un programa fuente escrito en ensamblador a cdigos ejecutables e interpretando los nombres simblicos para direcciones de memoria y otras entidades (ensamblado). El uso de referencias simblicas es una caracterstica bsica del lenguaje ensamblador, evitando tediosos clculos y direccionamiento manual despus de cada modificacin del programa. La mayora de los ensambladores tambin incluyen facilidades para crear macros, a fin de generar series de instrucciones cortas que se ejecutan en tiempo real, que insertan el cdigo de la macro, en dicha posicin, en lugar de utilizar subrutinas Los ensambladores han estado disponibles desde la dcada de 1950. Los ensambladores modernos, especialmente para arquitecturas basadas en RISC que pueden ejecutar varias instrucciones simultneamente, como por ejemplo MIPS, SPARC y PA-RISC optimizan las instrucciones para explotar al mximo la eficiencia de segmentacin[] de la CPU.

Pgina 336

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

En el compilador para lenguajes de alto nivel, son el ltimo paso antes de generar el cdigo ejecutable. Los ensambladores avanzados ofrecen posibilidades de abstraccin que incluyen: Control avanzado de estructuras. Procedimientos de alto nivel, declaracin de funciones. Tipos de datos que incluyen estructuras, registros, uniones, clases y conjuntos. Sofisticado procesamiento de macros.

Lenguaje Un programa escrito en lenguaje ensamblador consiste en una serie de instrucciones que corresponden al flujo de rdenes ejecutables que pueden ser cargadas en la memoria de un sistema basado en microprocesador. Por ejemplo, un procesador x86 puede ejecutar la siguiente instruccin binaria como se expresa en cdigo de mquina: Binario: 10110000 01100001 (Hexadecimal: 0xb061)

La representacin equivalente en lenguaje ensamblador es ms fcil de recordar: MOV al, 061h

Esta instruccin significa: Asigna el valor hexadecimal 61 (97 decimal) al registro "al".

El mnemnico "mov" es un cdigo de operacin u "opcode", elegido por los diseadores de la coleccin de instrucciones para abreviar "move" (mover, pero en el sentido de copiar valores de un sitio a otro). El opcode es seguido por una lista de argumentos o parmetros, completando una instruccin de ensamblador tpica.

Pgina 337

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

La transformacin del lenguaje ensamblador en cdigo mquina la realiza un programa Ensamblador, y la traduccin inversa la puede efectuar un desensamblador. A diferencia de los lenguajes de alto nivel, aqu hay usualmente una correspondencia 1 a 1 entre las instrucciones simples del ensamblador y el lenguaje de mquina. Sin embargo, en algunos casos, un ensamblador puede proveer "pseudo instrucciones" que se expanden en un cdigo de mquina ms extenso a fin de proveer la funcionalidad necesaria. Por ejemplo, para un cdigo mquina condicional como "si X mayor o igual que" , un ensamblador puede utilizar una pseudoinstruccin al grupo "haga si menor que" , y "si = 0" sobre el resultado de la condicin anterior. Los Ensambladores ms completos tambin proveen un rico lenguaje de macros que se utiliza para generar cdigo ms complejo y secuencias de datos. El uso del ensamblador no resuelve definitivamente el problema de cmo programar un sistema basado en microprocesador de modo sencillo ya que para hacer un uso eficiente del mismo, hay que conocer a fondo el microprocesador, los registros de trabajo de que dispone, la estructura de la memoria, y muchas cosas ms referentes a su estructura bsica de funcionamiento. Cada arquitectura de microprocesadores tiene su propio lenguaje de mquina, y en consecuencia su propio lenguaje ensamblador ya que este se encuentra muy ligado a la estructura del hardware para el cual se programa. Los microprocesadores difieren en el tipo y nmero de operaciones que soportan; tambin pueden tener diferente cantidad de registros, y distinta representacin de los tipos de datos en memoria. Aunque la mayora de los microprocesadores son capaces de cumplir esencialmente las mismas funciones, la forma en que lo hacen difiere y los respectivos lenguajes ensamblador reflejan tal diferencia. Pueden existir mltiples conjuntos de mnemnicos o sintaxis de lenguaje ensamblador para un mismo conjunto de instrucciones, instanciados tpicamente en diferentes programas en ensamblador. En estos casos, la

Pgina 338

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

alternativa ms popular es la provista por los fabricantes, y usada en los manuales del programa. Cdigo mquina El cdigo mquina, o lenguaje de mquina, est formado por instrucciones sencillas, que -dependiendo de la estructura del procesador- pueden especificar: Registros especficos para operaciones aritmticas, direccionamiento o control de funciones.

Posiciones de memoria especficas (offset). Modos de direccionamiento usados para interpretar operandos.

Las operaciones ms complejas se realizan combinando estas instrucciones sencillas, que pueden ser ejecutadas secuencialmente o mediante instrucciones de control de flujo. Las operaciones disponibles en la mayora de los conjuntos de instrucciones incluyen: Mover llenar un registro con un valor constante mover datos de una posicin de memoria a un registro o viceversa escribir y leer datos de dispositivos Computar sumar, restar, multiplicar o dividir los valores de dos registros, colocando el resultado en uno de ellos o en otro registro realizar operaciones binarias, incluyendo operaciones lgicas (AND/OR/XOR/NOT) comparar valores entre registros (mayor, menor, igual)

Pgina 339

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Afectar el flujo del programa saltar a otra posicin en el programa y ejecutar instrucciones all saltar si se cumplen ciertas condiciones (IF) saltar a otra posicin, pero guardar el punto de salida para retornar (CALL, llamada a subrutinas)

Algunas computadoras incluyen instrucciones complejas dentro de sus capacidades. Una sola instruccin compleja hace lo mismo que en otras computadoras puede requerir una larga serie de instrucciones, por ejemplo:

Salvar varios registros en la pila de una sola vez Mover grandes bloques de memoria Operaciones aritmticas complejas o de punto flotante (seno, coseno, raz cuadrada)

Mientras que una computadora reconoce la instruccin de mquina IA-32 10110000 01100001 Para los programadores de microprocesadores x86 es mucho ms fcil reconocer dicha instruccin empleando lenguaje ensamblador: movb 0x61,%al Este cdigo mueve el valor hexadecimal 61 (97 en decimal) al registro 'al'. Ejemplos de lenguaje ensamblador Ejemplo 1 El siguiente es un ejemplo del programa clsico Hola mundo escrito para la arquitectura de procesador x86 (bajo el sistema operativo DOS). .model small .stack .data Cadena1 DB 'Hola Mundo.$'
Pgina 340

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

.code programa: mov ax, @data mov ds, ax mov dx, offset Cadena1 mov ah, 9 int 21h int 20h end programa Ejemplo 2 Una seleccin de instrucciones para una computadora virtual [3] ) con las correspondientes direcciones de memoria en las que se ubicarn las instrucciones. Estas direcciones NO son estticas. Cada instruccin se acompaa del cdigo en lenguaje ensamblador generado (cdigo objeto) que coincide con la arquitectura de computador virtual, o conjunto de instrucciones ISA. Dir. Etiqueta Instruccin .begin .org 2048 a_start .equ 3000 Cdigo mquina[4]

204 8

ld length,%

Pgina 341

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

206 4 206 8 207 2 207 6 208 0 208 4 208 8 209 2 209 6

be done

00000010 00000110 10000010 11111100

10000000

00000000

addcc %r1,-4,%r1

10000000

01111111

addcc %r1,%r2,%r 10001000 4 00000010 11001010 00000000 00010000 11111011

10000000

01000000

ld %r4,%r5

00000001

00000000

ba loop

10111111

11111111

addcc %r3,%r5,%r 10000110 3 00000101 10000001 00000100 00000000 00010100 00000000 10111000

10000000

11000000

done:

jmpl %r15+4,%r0

11000011

11100000

length:

20

00000000

00000000

address: a_start

00000000

00001011

.org a_start

Pgina 342

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

300 0 Ejemplo 3

a:</tt

Cdigo en lenguaje ensamblador para C Intel 80C51:

ORG 8030H T05SEG: SETB TR0 JNB uSEG,T05SEG CLR TR0 CPL uSEG MOV R1,DPL MOV R2,DPH CJNE R2,#07H,T05SEG CJNE R1,#78H,T05SEG MOV DPTR,#0000H RET Ejemplo 4 Cdigo en lenguaje ensamblador para C 16F84 de Microchip: ORG 0 Inicio bsf clrf STATUS,RP0 PORTB ;esta subrutina es utilizada ;para realizar una cuenta de ;0,5 segundos mediante la ;interrupcin del timer 0.

movlw 0xFF movwf PORTA bcf Principal


Pgina 343

STATUS,RP0

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

movf movf btfsc goto sublw btfss END

PORTA,W Contador,F STATUS,Z PuntoDecimal d'9' STATUS,C

movwf Contador

4.3 Aplicaciones Cada vez existen ms productos que incorporan un microcontrolador con el fin de aumentar sustancialmente sus prestaciones, reducir su tamao y coste, mejorar su fiabilidad y disminuir el consumo. Algunos fabricantes de microcontroladores superan el milln de unidades de un modelo determinado producidas en una semana. Este dato puede dar una idea de la masiva utilizacin de estos componentes. Los microcontroladores estn siendo empleados en multitud de sistemas presentes en nuestra vida diaria, como pueden ser juguetes, horno microondas, frigorficos, televisores, computadoras, impresoras, mdems, el sistema de arranque de nuestro coche, etc. Y otras aplicaciones con las que seguramente no estaremos tan familiarizados como instrumentacin electrnica, control de sistemas en una nave espacial, etc. Una aplicacin tpica podra emplear varios microcontroladores para controlar pequeas partes del sistema. Estos pequeos controladores podran comunicarse entre ellos y con un procesador central, probablemente ms potente, para compartir la informacin y coordinar sus acciones, como, de hecho, ocurre ya habitualmente en cualquier PC. 4.3.1 Como Sistema Independiente La "tarjeta" que posee el sistema bsico para hacer funcionar al microprocesador 8085 se muestra en la Figura 27.
Pgina 344

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

En ella podemos ver cmo la conexin de la memoria EEPROM se realiza del mismo modo que se ha indicado en la edicin anterior. El banco de memorias RAM estar constituido en este caso por tres unidades tipo 6116, con idntico modo de conexin en todas sus lneas a excepcin de las lneas de seleccin de chip, que en este caso sern las CS0, CS1 y CS2 procedentes del decodificador 74LS138 (vea Saber 195). En lo que se refiere a la conexin del 8212, vemos que nada vara respecto a lo que el lector conoce, nicamente debemos mencionar la colocacin de una resistencia de 4k7 de "pull-up" a +5V en la seal ALE con el objeto de reafirmar los niveles de tensin en esta salida del microprocesador. Este mismo sistema se emplea en la parte alta del bus de direcciones en el que se sita un bloque de 8 resistencias de 10 k ohm cada una conectadas a +5V. El decodificador de direcciones 74LS138, sigue el mismo esquema de conexin explicado oportunamente. Ahora adems se refuerzan las salidas del mismo colocando un bloque de 8 resistencias de 4k7 a +5V. Puede verso como en este caso las salidas CS0, CS1 y CS2, tomadas de las patas 15, 14 y 13 respectivamente se emplean para direccionar las tres pastillas de memorias RAM que hemos colocado en el sistema. Puede verse con claridad cmo el microprocesador se sirve de un cristal de cuarzo de 4MHz y un condensador de 18pF, que colocados entre las patas 1 y 2 generan la oscilacin que produce la frecuencia de reloj a la que funcionar el sistema. Es decir, se genera la "frecuencia de trabajo". Destacamos adems el circuito situado en la seal de entrada RESET IN del microprocesador (pata 36) formado por una resistencia de 1 k ohm en paralelo con un diodo y un condensador electroltico de 1 microfaradio. Este circuito es el que asegura un arranque correcto del sistema en el momento de conexin a reinicindose el contador de programa en la direccin 0000H, despus de que la patilla 36 haya alcanzado el nivel lgico 1 (ALTO).

Pgina 345

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Este

circuito

produce

un

retardo

en

el

arranque

que

viene

dado

aproximadamente por la constante de tiempo RC En la parte izquierda de la Figura 27 puede verse que las seales INTR, TRAP, RST 7.5, RST 6.5, RST 5.5 y HOLD son conectadas directamente a masa para conseguir un correcto funcionamiento del sistema mientras no vayamos a emplearlas. Estas conexiones deben realizarse individualmente para cada seal y mediante puentes fcilmente eliminables de modo que si en un momento dado, para una determinada aplicacin deseamos emplear alguna de ellas, podamos hacerlo sin ms que eliminar el puente a masa correspondiente y tratando dicha entrada del modo adecuado. Adems deben colocarse distribuidos sobre la tarjeta condensadores de desacoplo. Lo ms usual es situar uno por cada circuito integrado y debern ir soldados mediante conexiones cortas y a ser posible directamente sobre las patillas de alimentacin de los circuitos integrados. Este es un medio eficaz y sencillo para impedir la creacin de seales parsitas de alta frecuencia que son derivadas a masa a travs del condensador. Normalmente estos condensadores son de 100nF. Puede apreciarse tambin cmo la tarjeta dispones, para su conexin a otros circuitos, de cuatro conectores: CON1: Constituido por 16 lneas en las cuales podemos encontrar el bus de direcciones completo (A0, A1, A2,..., A15). CON2: Constituido por 8 lneas en las que podemos encontrar el bus de datos completo (D0, D1,..., D7). CON3: Constituido por un total de 24 lneas entre las que encontramos el bus de control, el bloque completo de seales de interrupcin (que podremos utilizar desde el exterior eliminando previamente los puentes a masa) y las seales de seleccin de chip que se toman del decodificador 74LS138.

Pgina 346

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

CON4: Constituido por nueve lneas divididas en dos grupos que sirven para suministrar la alimentacin a la tarjeta (+5V y MASA). Realizadas todas estas consideraciones, no queda ms que analizar con detenimiento, las direcciones de memoria que ocupa cada uno de los componentes que integran esta tarjeta y las direcciones que quedan disponibles para futuras ampliaciones. Como puede deducirse de la figura 1 y apoyndonos en los valores que adquieren las entradas A0, A1, A2 y E3 del decodificador, se tendr la siguiente distribucin de direcciones: EPROM 27256: Desde 0000H hasta 7FFFH RAM 6116-1: Desde 8000H hasta 87FFH RAM 6116-2: Desde 9000H hasta 97FFH RAM 6116-3: Desde A000h hasta A7FFH Al mismo tiempo, los terminales del decodificador 74LS138 que quedan libres para aadir nuevos elementos al sistema, respondern a las siguientes direcciones:

CS3 - B000H CS4 - C000H CS5 - D000H CS6 - E000H CS7 - F000H

Pgina 347

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Figura 4.27

Ejemplo de Programas que realiza el microprocesador 8085 1) ;************************************************** ;* Nombre : Simulador de autmata programable * ;* Programador: Esteban Galeano * ;* Fecha: 13 octubre 1995 * ;* Ult. modif: 31 agosto 2000 *
Pgina 348

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

;* Fichero: AUTOMATA.ASM * ;************************************************** ;*************************************************************** ;* Se simular el funcionamiento de un autmata programable, * ;* en cuyo interior hay un circuito MARCHA/PARO. Para ello, * ;* seguir el siguiente funcionamiento: * ;* * ;* Marcha Paro Salida * ;* * ;* 0 0 Salida * ;* 0 1 0 * ;* 1 0 1 * ;* 1 1 0 * ;* * ;* HACER * ;* programar(8255); * ;* MIENTRAS PuertoA[7]=1 HACER * ;* valor:=PuertoA[1..0]; * ;* SI * ;* valor=00b -> * ;* valor=01b -> PuertoB[0]:=0 * ;* valor=10b -> PuertoB[0]:=1 * ;* valor=11b -> PuertoB[0]:=0 (prio PARO) *
Pgina 349

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

;* FSI * ;* FMIENTRAS * ;* MIENTRAS (cierto) * ;*************************************************************** ;**************************** ;* Definicin de ENTORNO * ;**************************** .RADIX H ;Sistema de numeracin ser hexadecimal ;**************************** ;* Definicin de CONSTANTES * ;**************************** cero: .EQU 0 DirPila: .EQU 1200 ;Direccin desde donde comenzar la PILA ByteControl: .EQU 90 ;8255 -> A in - B out - C out 2) ;*********************************************** ;* Nombre : Espera visualizable FFFF-0000 * ;* Programador: Esteban Galeano * ;* Fecha: 11 octubre 1995 * ;* Ult. modif: 31 agosto 2000 * ;* Fichero: CONTADOR.ASM * ;*********************************************** ;***************************************************************
Pgina 350

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

;* Se le dar un valor numrico a los registros HL y cada 1ms * ;* se decrementar su valor hasta llegar a cero, momento en el * ;* cual, se terminar el programa y regresar al S.O. * ;* * ;* HL:=seleccin * ;* HACER * ;* retardo(1ms); * ;* visualiza(HL); * ;* HL:=HL-1; * ;* MIENTRAS (HL<>0) * ;* visualiza(HL); * ;* restaurar; * ;*************************************************************** ;**************************** ;* Definicin de ENTORNO * ;**************************** .RADIX H ;Sistema de numeracin ser hexadecimal ;**************************** ;* Definicin de CONSTANTES * ;**************************** cero: .EQU 0 DirPila: .EQU 1200 ;Direccin desde donde comenzar la PILA seleccin: .EQU 2000 ;Numero de veces a decrementar
Pgina 351

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

;*************************** ;* Inclusin de SUBRUTINAS * ;*************************** .DATA ;Direccin inicial de las subrutinas .INCLUDE a:rutinas.asm ;Incluye la definicin de direcciones de rutinas del S.O. ;*************************** ;* Programa PRINCIPAL * ;*************************** .CODE .ORG 1000 ;Direccin inicial del programa LXI SP,DirPila ;SP:=DirPila LXI H,seleccion ;HL:=seleccion sigue: PUSH H ;Salvar los registros H y L CALL delay ;Retardo de 1ms CALL updad ;Visualiza HL en el campo de direcciones del Display POP H ;Recuperar los registros H y L DCX H ;HL:=HL-1 MOV A,H ;Si (H<>0) salta CPI cero JNZ sigue MOV A,L ;Si (L<>0) salta CPI cero

Pgina 352

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

JNZ sigue ;******************************* ;* Visualizar el Ultimo valor * ;******************************* PUSH H ;Salvar los registros H y L CALL updad ;Visualiza HL en el campo de direcciones del Display POP H ;Recuperar los registros H y L RST 1 .END 4.3.2 Como subsistema de una computadora La memoria principal o primaria (MP), tambin llamada memoria central, es una unidad dividida en celdas que se identifican mediante una direccin. Est formada por bloques de circuitos integrados o chips capaces de almacenar, retener o "memorizar" informacin digital, es decir, valores binarios; a dichos bloques tiene acceso el microprocesador de la computadora. La MP se comunica con el microprocesador de la CPU mediante el bus de direcciones. El ancho de este bus determina la capacidad que posea el microprocesador para el direccionamiento de direcciones en memoria. En algunas oportunidades suele llamarse "memoria interna" a la MP, porque a diferencia de los dispositivos de memoria secundaria, la MP no puede extraerse tan fcilmente por usuarios no tcnicos. La MP es el ncleo del sub-sistema de memoria de un computador, y posee una menor capacidad de almacenamiento que la memoria secundaria, pero una velocidad millones de veces superior. En las computadoras son utilizados dos tipos de MP:

Pgina 353

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

1. ROM o memoria de slo lectura (Read Only Memory). Viene grabada de

fbrica con una serie de programas. El software de la ROM se divide en dos partes:
1. Rutina de arranque o POST (Power On Self Test, auto

diagnstico componentes

de de

encendido): la

Realiza

el por

chequeo ejemplo,

de

los

computadora;

circuitos

controladores de video, de acceso a memoria, el teclado, unidades de disco,etc. Se encarga de determinar cul es el hardware que est presente y de la puesta a punto de la computadora. Mediante un programa de configuracin, el SETUP, lee una memoria llamada CMOS RAM (RAM de Semiconductor de xido metlico). sta puede mantener su contenido durante varios aos, aunque la computadora est apagada, con muy poca energa elctrica suministrada por una batera, guarda la fecha, hora, la memoria disponible, capacidad de disco rgido, si tiene disquetera o no. Se encarga en el siguiente paso de realizar el arranque (booteo): lee un registro de arranque 'BR' (Boot Record) del disco duro o de otra unidad (como CD, USB, etc.), donde hay un programa que carga el sistema operativo a la RAM. A continuacin cede el control a dicho sistema operativo y el computador queda listo para trabajar.
2. Rutina BIOS o Sistema Bsico de Entrada-Salida (Basic Input-

Output System): permanece activa mientras se est usando el computador. Permite la activacin de los perifricos de entrada/salida: teclado, monitor, ratn, etc.
2. RAM o memoria de acceso aleatorio (Random Access Memory). Es la

memoria del usuario que contiene de forma temporal el programa, los datos y los resultados que estn siendo usados por el usuario del computador. En general es voltil, pierde su contenido cuando se apaga

Pgina 354

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

el computador, es decir que mantiene los datos y resultados en tanto el bloque reciba alimentacin elctrica, a excepcin de la CMOS RAM. Tanto la RAM como la ROM son circuitos integrados, llamados comnmente chips. El chip o circuito integrado es una pequea pastilla de material semiconductor (silicio) que contiene mltiples circuitos integrados, tales como transistores, entre otros dispositivos electrnicos, con los que se realizan numerosas funciones en computadoras y dispositivos electrnicos; que permiten, interrumpen o aumentan el paso de la corriente. Estos chips estn sobre una tarjeta o placa. El contenido de las memorias no es otra cosa que dgitos binarios o bits (binary digits), que se corresponden con dos estados lgicos: el 0 (cero) sin carga elctrica y el 1 (uno) con carga elctrica. A cada uno de estos estados se le llama bit, que es la unidad mnima de almacenamiento de datos. El microprocesador direcciona las posiciones de la RAM para poder acceder a los datos almacenados en ellas y para colocar los resultados de las operaciones. Al "bloque de MP", suele llamarse memoria RAM, por ser ste el tipo de chips de memoria que conforman el bloque, pero se le asocian tambin el chip CMOS, que almacena al programa BIOS del sistema y los dispositivos perifricos de la memoria secundaria (discos y otros perifricos), para conformar el sub-sistema de memoria del computador. Los bloques RAM, los ROM y las memorias de almacenamiento secundario conforman el subsistema de memoria de una computadora.

Pgina 355

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Conclusin
El ordenador recibe y enva la informacin a travs de los perifricos por medio de los canales. La UCP es la encargada de procesar la informacin que le llega al ordenador. El intercambio de informacin se tiene que hacer con los perifricos y la UCP. s un sistema complejo que puede llegar a estar constituido por millones de componentes electrnicos elementales. Esto que en le teora parece tan fcil es bastante mas complicado en la prctica, ya que aparte de los bus de datos y de direcciones existen tambin casi dos docenas ms de lneas de seal en la comunicacinentre la CPU y la memoria, a las cuales tambin se acude. Dentro de la tecnologa SCSI hay 2 generaciones y una tercera que est a la vuelta de la esquina. La primera generacin permita un ancho de banda de 8 bits y unos ratios de transferencia de hasta 5 MBps. El mayor problema de esta especificacin fue que para que un productose denominara SCSI solo deba cumplir 4 cdigos de operacin de los 64 disponibles por lo que proliferaron en el mercado gran cantidad de dispositivos SCSI no compatibles entre s. El microprocesador lo que hace es procesar ordenes sencilla, para procesar ordenes mayores deberemos construir un programa. Con un micro de 16 bits solo se puede direccionar hasta 64 k de memoria, pero ya sabemos que se debe acceder a ms de ellas, esto lo logramos con el esquema de direccionamiento de 20 bits utilizado por el microprocesador Una vez seleccionada y analizada la instruccin deber accionar los circuitos correspondientes de otras unidades, para que se cumplimente la instruccin, a travs del secuenciador o reloj. El chip ms importante de cualquier placa madre es el procesador Las teclas estn sobre los puntos de interseccin de las lneas conductoras horizontales y verticales. Cuando se pulsa una tecla. Se establece un contacto elctrico entre la lnea conductora vertical y horizontal que pasan por debajo de la misma realizar las operaciones con los datos procesados por el ordenador. Puede realizar las operaciones aritmticas bsicas: suma, resta, multiplicacin y divisin, as como, controlada por la UC operaciones como la de desplazamiento. Este desplazamiento se puede realizar hacia la derecha o hacia la izquierda. La UAL utiliza un registro denominado acumulador donde almacena los resultados de las operaciones antes de ser enviados a la memoria. Cuando vamos a acceder a la direccin de memoria especificada en el CP, esta direccin

Pgina 356

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

deber transferirse al RDM, a travs del cual accederemos a dicha direccin. Esto se realiza al iniciar cada ciclo de instruccin. La memoria est compuesta de chips. Lo nico que realizan estos chips es almacenar la informacin hasta que esta es requerida. El nmero de chips de que consta la memoria es el que determina la capacidad de la misma.

Fuentes consultadas

Buses http://www.monografias.com/trabajos/bus/bus.shtml Bus de direcciones http://es.wikipedia.org/wiki/Bus_de_direcciones

Bus de datos http://es.kioskea.net/contents/pc/bus.php3 MicroMotorola imgurl=http://www.moebiuz.org/wpcontent/galerias/entradas/mc68000_2.jpg&imgrefurl=http://www.moebiuz.org/ta g/electronica/&usg=__UgTVQbHw4CJVGPdRMpbzy8M38co=&h=508&w=602& sz=94&hl=es&start=34&um=1&itbs=1&tbnid=TeyWQwX7tlFpBM:&tbnh=114&tb nw=135&prev=/images%3Fq%3Dbus%2Bde%2Bdatos%26start%3D20%26um %3D1%26hl%3Des%26client%3Dsafari%26sa%3DN%26rls%3Den%26ndsp %3D20%26tbs%3Disch:1%26prmd%3Di Tabla caractersticas buses: http://es.kioskea.net/contents/pc/bus.php3 Buses normalizados ms comunes: http://html.rincondelvago.com/informaticabasica_8.html Modo real: http://es.wikipedia.org/wiki/Modo_real http://www.google.com.mx/imgres?

Pgina 357

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Modo protegido: http://usuarios.sion.com/iop-chagui/modo_protegido.html

Modo real virtual: http://www.monografias.com/trabajos/microproce/microproce.shtml No enmascarable http://es.wikipedia.org/wiki/Interrupcin_no_enmascarable Temporizacin http://proton.ucting.udg.mx/dpto/maestros/mateos/clase/teoria/Temporizacion/ Interrupciones http://www.scribd.com/doc/12681415/Metodos-de-Direccionamiento L. Urieta y P. Fuentes (2002). Arquitectura del Microprocesador 8088. en lnea]. [Consultada: Disponible: 2005,

[Documento

http://azul2.bnct.ipn.mx/~computacion5/Arquitectura%20del %20microprocesador/microprocesador_8088.pdf. Noviembre 23] Es.wikipedia.org Mitecnologico.com http://html.rincondelvago.com/arquitectura-de-los-microprocesadores_1.html

http://irlenys.tripod.com/microii/claseiii.htm http://usuarios.multimania.es/irojasb/El_Microprocesador.htm El Microprocesador http://www.monografias.com/trabajos11/micro/micro.shtml Monografa "Los Microprocesadores" en Monografa.com http://www.tgdaily.com/content/view/31408/135/ Noticia de 2007 http://www.monografias.com/trabajos11/micro/micro.shtml
Pgina 358

Unidad:

Instituto Tecnolgico superior de Coatzacoalcos.

Edicin No. 1

Fecha de Edicin:

Departamento: Materia:

Ingeniera Sistemas Computacionales.

Monografa "Los Microprocesadores" en Monografa.com Upgrading and repairing PC's Core 2 Extreme: 3.66 GHz And FSB 1333 - Review Tom's Hardware : THG Tuning Test: Core 2 Extreme vs. Athlon 64 FX-62. http://es.wikipedia.org/wiki/Memoria_principal

Pgina 359

También podría gustarte