2.2 Unidad Central de Proceso. 4
1. INTRODUCCIÓN
2 conceptos fundamentales:
– Estructura à componentes físicos, componentes estáticos.
– Elementos funcionales à Permiten al pc realizar una tarea determinada. Disponen de programas para dirigir las tareas (están implementadas en el HW)
– Arquitectura à Formada por ambos elementos.
– Microprocesadores evolucionan à arquitectura mejora.
2. CLASIFICACIÓN
Componentes básicos de un PC:
– Memoria central o principal.
– Unidad central del proceso (UCP p CPU) o microprocesador.
o Unidad de control (UC)
o Unidad aritmeticológica (UAL)
– Buses
– Reloj
– Unidades de entrada y salida
2.1 Memoria central
– Lugar donde residen los programas antes de ser ejecutados y los datos.
– Los datos pueden ser:
· Datos de entrada
Son los introducidos en el PC mediante dispositivos de entrada o de forma automática (sin usuario)
· Datos intermedios
Datos procesados por una instrucción se pueden solicitar de nuevo. Por lo tanto, se almacenan en pequeñas memorias (registros) para posterior uso.
· Datos de salida
Datos ya procesados que dan lugar a los resultados o datos de salida.
– La capacidad de memoria central aumenta llamándose (Espacio o mapa de memoria a la que se puede acceder)
– Las memorias están construidas por semiconductores (fabricados con tecnología CMOS)
– Cada bit de información se almacena en un transistor. Permite mayor integración, pero tienen que ser reescritos cada cierto tiempo para no perder información.
2.1.1 Direccionamiento de la memoria
Los tipos de direccionamiento:
o Direccionamiento 2D
– 2 transductores (1 para lectura y otro para escritura)
– Se conectan a las celdas que forman cada palabra
– Cada fila formaría una palabra (estructura matricial)
– Si disponemos de 4 palabras de 16 bits cada una (4 filas, 16 columnas)à Existen 16 pares de transductores que se conectan a cada fila de la matriz donde se encuentran todos los bits que forman la palabra.
– Se usa en almacenamientos reducidos pero alta velocidad.
o Direccionamiento 3D
– La memoria esta estratificada (parecido a una matriz)
– Para acceder a una palabra la dirección se divide en 2 partes (una indicaría la fila y la otra la columna) y la unión de ambas daría como resultado la lectura o escritura de los bits de todas las capas con el mismo número de fila y columna.
– Se utiliza en almacenamiento mayores, pero en menor velocidad que las 2D.
DIFERENCIA ENTRE AMBOS:
– En el 2D se accede a todos los bits que forman las palabras indicando su dirección completa necesitando 1 solo decodificador.
– En el 3d, la dirección de la memoria se divide en 2 (fila y columna) necesitando 2 decodificadores.
2.1.2 Refresco de la memoria
– La memoria necesita ser reescrita cada cierto tiempo.
– Dispone de un contador integrado que emite señal para ser sobrescrita. De este modo aumenta su valor.
Se pueden dar las siguientes situaciones:
o La señal se emite durante un proceso de lectura. Tras finalizar el ciclo de lectura, procede al refresco y continua con la siguiente fase de lectura.
o La señal se emite durante un proceso de escritura. El refresco se realiza a continuación de la escritura.
o La señal se emite sin ningún proceso activo se hace directamente el refresco.
2.2 Unidad Central de Proceso
2.2.1 Clasificación
– Unidad de control
Dirige y controla la ejecución de la instrucción que ha sido decodificada.
– Unidad Aritmeticológica
Consta de una unidad para la realización de cálculos
– Registros
1) Registros internos de uso general
Almacenan cualquier tipo de información (datos o posiciones de memoria)
v Registros internos de datos
– A veces es conveniente almacenar ciertos datos (datos muy solicitados o para usos posteriores)
– Un registro de datos con un tratamiento especial es el acumulador.
– Usado por la UAL permite realizar operaciones sobre los datos almacenados.
v Registros internos de direcciones
– Almacena la dirección de la memoria donde se encuentra un dato o donde se desea guardar.
– Se les denomina punteros.
– Contendrán un valor denominado índice.
– Se podrá acceder a posiciones contiguas de memoria solo incrementando el valor del índice.
2) Registros internos específicos
v Contador de programa (Program Counter PC)
– Contiene la dirección de memoria de la siguiente instrucción a ejecutar.
– Una excepción es cuando se produce un salto de ejecución del programa.
v Registro de instrucción
– Tener almacenada la instrucción que se está ejecutando.
– La UC puede acceder a ella cuando sea necesario.
v Indicador de resultado
– Formado por series de bits (0 o 1) según haya finalizado la ejecución de una instrucción por la ALU de forma exitosa o no.
– Contiene info extra à resultado positivo, negativo…
v Puntero pila
Almacena direcciones de retorno en las llamadas subrutinas.
2.2.2 Unidades funcionales
– Unidad de cache
v Se creo para disminuir el tiempo de espera del procesador.
v Se comunica con la u.interconexión con el bus y con la unidad de preobúsqueda para suministrar los datos solicitados y almacenar los resultados.
v Para pasar de la cache a la memoria principal se necesitan unos registros intermedios (incluidos en la cache)
v Se envía al bus y de ahí a la memoria principal.
v Esta dividida en 2 partes (una para datos y otra para códigos)
v Un pequeño programa separa los datos del código de forma paralela.
– Unidad de prebúsqueda
v Busca las instrucciones que se tienen que ejecutar en cada momento.
v Las sitúa en registros correspondientes que actúan de intermediarios.
v Irá situando las instrucciones formando una “cola” hasta que el registro este lleno.
v Para poder cumplir su cometido tiene que activar al bus para depositar la información en él cuando se encuentre disponible.
– Unidad de coma flotante
v Opera sobre los números en coma flotante
v Incluye los registros de almacenamiento temporal para la realización de cálculos.
– Unidad de interconexión con el bus
v Los resultados obtenidos tienen que llegar a su destino.
v Para ello, conectará la UCP con el bus del sistema para que una vez ejecutada la instrucción la información llegue al dispositivo correspondiente.
– Unidad de paginación
v Calcula la dirección física real donde se encuentra una instrucción a partir de la dirección lineal.
– Unidad de segmentación
v Realiza los cálculos necesarios para obtener las direcciones lineales a partir de las direcciones lógicas generadas por el compilador.
– Unidad de decodificación
v Se encarga de traducir las instrucciones.
v Emite órdenes para su ejecución.
– Monitor de prestaciones
v Realiza el seguimiento del funcionamiento de la CPU para evitar tiempos muertos producidos por las operaciones.
– Unidad de enteros superescalar
v Consta de 2 unidades de enteros para los cálculos de los números de coma fija.
v Dispone de los registros necesarios para almacenar los datos sobre los que realizará las operaciones.
– Unidad de redundancia funcional
Detecta posibles errores que se producen en la transferencia de datos mediante la generación de bits de paridad.
– Unidad de predicción de bifurcaciones
Almacena las últimas direcciones que se han tenido que calcular cuando se ha encontrado con una instrucción de salto o bifurcación.
– Unidad de caché de seguimiento de ejecución
Cuando una instrucción ha sido ejecutada y vuelve a encontrarse con otra que realiza la misma acción, no vuelve a ejecutarla.
2.3 Reloj
Temporiza la realización de las distintas tareas para que se ejecuten en el momento apropiado.
2.4 Buses de expansión
· Permiten la ampliación del equipo.
· Pone en comunicación los elementos de la placa base con las tarjetas adicionales encargadas de comunicarse con los periféricos.
o ISA (Industry Standard Architecture)
Utilizado en los primeros pcs.
Bus de 8 bits.
o EISA (Extended ISA)
Bus de 32 bits
o MCA (Micro channel adapter)
Diseñado por IBM
No compatible bus ISA
Bus de 32 bits
o VLB (Vesa local Bus)
Amplía la velocidad de transferencia
Bus de 32 bits
o PCI (Peripherical Component Interconnect)
Posibilidad de utilizar PLUG&PLAY
Bus de 32 bits.
o AGP (Accelerated Graphics Port)
Comunicación con tarjetas gráficas
Pentium II
o PCMCIA (Personal Computer Memory Card International Association)
Utilizado en ordenadores portátiles
Permite conexión en caliente
2.5 Unidades de E/S
– Nexo de unión del Pc con los periféricos
– 3 tipos de traspaso de información:
o Transferencia elemental:
El traspaso de info es mínimo (octeto).
Unidad mínima de almacenamiento de información o una palabra.
o Transferencia de bloque:
Hay dispositivos que transmiten bloque de información y no solo una unidad elemental.
o Operación de E/S:
Se encarga de traspaso de información completa y sin errores.
2.5.1 Componentes
· Registros
· Datos:
Contendrá los datos con los que opera la unidad.
· Control:
Contiene información específica que determina el modo de funcionamiento de la unidad.
· Estado:
Contiene información para saber en que estado se encuentra el periférico.
· Bloque de decodificación de direcciones / acceso a buses
Dispone de los elementos necesarios para averiguar si el periférico es solicitado para realizar una operación E/S.
· Controlador
Encargado de dirigir el funcionamiento del periférico.
2.5.2 Funciones
· Adaptar las señales
· Adaptar los códigos
· Descarga de la CPU
· Atención y sincronización con el periférico.
2.5.3 Métodos de transmisión
· Simplex:
La info viaja en un único sentido
· Semiduplex:
Utiliza un canal para la emisión en los dos sentidos, pero no de forma simultánea.
· Fullduplex:
La información puede ser enviada en ambos sentidos y de forma simultánea.
2.5.4 Tipos de transmisión
· Serie
Los bits se mandan de forma secuencial, uno detrás del otro.
Se añade un bit de arranque para indicar que comienza la transmisión de bloque de bits.
· Paralelo
Existen tantas líneas como bits se quieren enviar
Viaja un bit por cada línea al mismo tiempo.
La transmisión es más rápida pero más cara.
2.5.5 Modos de transmisión
· Asíncrona:
– Los datos se envían carácter por carácter sin estar sincronizados por el reloj.
– Se envían en cualquier momento.
– La línea por la que se transmite mientras esta en off se encuentra en estado alto o nivel activo.
– Cuando comienza la transmisión de un carácter se envía un bit de arranque que indica el comienzo conjunto de bits, haciendo que la línea pase a nivel bajo.
– Cuando finaliza la emisión envía un bit de parada que indica el final de la transmisión.
– También va acompañado de un bit de paridad.
· Síncrona:
Los datos se envían sincronizados por el reloj formado (bloques o grupos de caracteres).
2.5.6 Organización de entrada y salida OSS
Para que exista una comunicación adecuada se necesita disponer de los siguientes elementos:
· Gestor de entrada y salida à contiene las subrutinas necesarias para comunicarse con los dispositivos.
· Controlador à Constituido por la circuitería necesaria para controlar y coordinar el periférico con la CPU.
§ Decodificador de direcciones:
Tiene que detectar que su puerto es con el que la CPU quiere trabajar.
§ Puerto de datos
Lugar donde permanecerán los datos que se van a enviar o recibir.
§ Puerto de estado
Informa sobre la situación del periférico.
§ Puerto de control
Señales que necesitan ser intercambiadas entre la CPU y el controlador.
§ Secuenciador del controlador
Encargado de generar señales que permiten el paso de la información ya sea para recibirla o enviarla.
RESUMEN: Controlador pequeño que posee elementos HW y SW independientemente y así descargar a la CPU de trabajo.
2.5.7 Mecanismo de transmisión de las ES
Proceso de entrada y salida que puede producirse de 3 formas diferentes requiriendo una mayor o una menor participación de la CPU.
· E/S programada:
Programa que se esta ejecutando es el que hace la petición de un proceso de entrada y salida que es gestionada mediante SW.
· E/S controlada por interruptores:
Dispositivos que provocan una interrupción para realizar el proceso de E/S.
· E/S con Acceso Directo a Memoria (DMA)
Dispositivo especial denominado controlador DMA (CDMA) que controla la transmisión entre la memoria y el periférico con escasa participación por parte de la CPU.
2.5.8 Puerto de comunicaciones
· Puerto serie:
Conocido como RS/232 controlado por circuitería llamada UART situada en la placa base.
Los pcs suelen dispones de 4 puertos serie. COM1, COM2, COM3 y COM4.
El UART (Universal Asynchronus Receiver/ Transmitter) consta de:
· Registro de desplazamiento TX
Guarda la información que va a ser enviada.
· Registro de desplazamiento DX
Guarda la información recibida.
· Lógica TX:
Transforma la información paralela en serie.
· Lógica DX
Realiza el proceso contrario al anterior.
· RT:
Registro que almacena los bits que se van a transmitir antes de pasar al registro TX:
· RR:
Registro que almacena los bits recibidos antes de pasar por el registro DX.
· RCM y REM
Registros que almacenan las características del modo en que se van a transmitir.
· RFI
Almacena la información correspondiente cuando se produce una interrupción.
· Lógica de temporización:
· Lógica de control y selección
Detecta si el sistema necesita utilizar el puerto de serie.
Puerto paralelo:
Permite la comunicación de 8 bits de manera simultáneas.
Fue diseñado para impresoras.
· SPP (Standard Parallel Port):
Puerto paralelo original diseñado para comunicar datos desde el ordenador a la impresora.
Unidireccional à señales de libre, ocupado, atasco, error…
· EPP (Enhanced Parallel Port):
Evolución de la anterior y agrega posibilidad bidireccional.
Podemos instalar dispositivos de E (scanner) y de E/S (cd-rom, disco duro externo)
La tasa de transferencia es de 500kb/seg.
· ECP (Extended Capabilities Port)
Diseñado por Microsoft y Hewlett-Packard.
Intención de mejorar al anterior ampliando la velocidad de transferencia hasta 1mb/seg.
Además de incorporar canales DMA.
· Puerto USB
Siglas de Universal serial bus (Bus serie universal)
Permite conectar los dispositivos en caliente (sistema encendido).
· SCSI
Small Computer System Interface (sistema de conexión para pequeños ordenadores)
Entorno profesional. Permite 15 periféricos.
· IDE:
Integrated Drive Electronics (dispositivos con electrónica intergrada)
ATA, ATA-1, ATA-2, ATA-3, ATA-4, ATA-5.
Puerto para conectar disco duro y las unidades cd-rom o grabadoras internas.
2.6 Periféricos
– Dispositivos de entrada.
· Teclado:
Introduce información en el PC.
· Ratón:
Dispositivo de entrada más utilizado.
Conectado al PC a través de un puerto serie (COM1 o COM2).
· Lápiz óptico:
Se utiliza para seleccionar un punto de la pantalla y poder así elegir una opción dentro un conjunto de posibilidades.
Se utiliza en programas basados en menús.
· Lectores/ Detectores de datos:
Fundamento para la lectura de datos ya sea de lectura magnética u óptica.
Siempre es el mismo y consiste en transformar la información obtenida en una secuencia de 0s y 1s ya que es el único lenguaje que entiende le ordenador.
· Unidades de reconocimiento de la voz:
Dispositivos que permiten introducir texto de forma hablada en la computadora.
· Digitalizadora o Tablet gráfica:
Permite enviar al computador dibujos más o menos complejos pasando un lápiz o cursos sobre el diseño que queremos digitalizar.
· Palanca manual de control:
El joystick dispone de una serie de controles que al ser pulsado transmiten una señal al ordenador que indica la posición en la pantalla que se corresponde con las coordenadas X Y del monitor.
La señal analógica recibida es transformada en digital por medio de un conversor analógico/digital dispuesto en su interior.
– Dispositivos de salida:
· Impresoras:
Dispositivo de salida que permite recoger la información sobre el papel.
· Visualizaciones o displays:
Son utiles para visualizar pequeñas cantidades de información ya sea gráficos o textos. (calculadoras electrónicas, relojes digitales …)
· Sintetizadores de la voz:
Transformar una señal digital procedente del ordenador en una señal analógica (voz).
Para realizar la función incluyen un conversor digital analógico interior.
· Registradores gráficos o plotters:
Similares a impresoras, pero mayor tamaño y precisión.
· Monitores de visualización:
– Dispositivos de E/S
· Modem:
Permite la transmisión de datos entre 2 ordenadores que se encuentran a una determinada distancia.
· Pantallas sensibles al tacto:
Dispositivo interactivo. Usuario pincha sobre botones de la pantalla.
· Cámaras digitales:
Tras tomar la imagen la somete a un procesamiento que la va a convertir en una secuencia de 0s y 1s.
– Dispositivos de almacenamiento secundarios:
· Dispositivos magnéticos:
Se utilizan para realizar copias de seguridad.
· Discos ópticos:
Emplear rayo laser que dependiendo de la tarea a realizar y del tipo de disco se aplica con distinta intensidad para almacenar o leer información.
· Discos magnetoópticos:
Utilizan lo mejor de ambas tecnologías.