Tema 70A – Control programado, tipos, elementos y características

Tema 70A – Control programado, tipos, elementos y características

0. ÍNDICE

1. Introducción. ………………………………………………………………………………………………………………… 2

2. El autómata programable……………………………………………………………………………………………….. 2

2.1. Desarrollo histórico ………………………………………………………………………………………………….. 2

2.2. Aplicaciones……………………………………………………………………………………………………………. 3

2.3. Estructura del Automata programable ………………………………………………………………………… 3

2.3.1. Estructura externa. …………………………………………………………………………………………….. 4

2.3.2. Estructura interna. ……………………………………………………………………………………………… 4

2.4. Ciclo de funcionamiento …………………………………………………………………………………………… 7

2.5. Técnicas de programación ……………………………………………………………………………………….. 8

3. Circuitos lógicos programables ……………………………………………………………………………………….. 8

3.1. Definición ………………………………………………………………………………………………………………..8

3.2. Estructura básica de un dispositivo lógico programable………………………………………………… 9

3.3. Dispositivos lógicos programables …………………………………………………………………………….. 9

3.3. Dispositivos lógicos programables complejos ……………………………………………………………. 10

3.4. Matrices de puertas programables …………………………………………………………………………… 10

4. Microcontroladores ……………………………………………………………………………………………………… 11

5. Microprocesadores ……………………………………………………………………………………………………… 11

5.1. Estructura básica …………………………………………………………………………………………………… 12

5.2. Funcionamiento de la CPU ……………………………………………………………………………………… 13

5.3. Vias de comunicación en el microprocesador ……………………………………………………….. 14

5.4 Entradas y salidas …………………………………………………………………………………………………. 14

7. Conclusiones ……………………………………………………………………………………………………………… 15

8. Bibliografía básica……………………………………………………………………………………………………….. 15

1. INTRODUCCIÓN.

Hoy en día la presencia del control programado en sus diferentes acepciones (autómatas programables, circuitos lógicos programables, microcontroladores o procesador) esta en todos y cada uno de los elementos de nuestra vida. Es por ello que en el currículo de tecnología de la E.S.O ha de incluirse al menos un tema, que proporcione al alumnado una visión general de cómo se han desarrollado los distintos tipos de control, cuales son las diferentes opciones y cómo funcionan. El tema lo dividiremos en cuatro grandes grupos: autómatas programables, circuitos lógicos programables, microcontroladores y microprocesadores. Aunque el tiempo de exposición para el tema es limitado intentaremos exponer al alumno a aquellos conceptos más relevantes que pueden serle útiles y que pueden aplicar a otras disciplinas.

2. EL AUTÓMATA PROGRAMABLE

Un Autómata Programable Industrial (API) o Programable Logic Controller (PLC), es un equipo electrónico programable en lenguaje no informático, diseñado para controlar en tiempo real y en ambiente industrial, procesos secuenciales.

La aparición de los ordenadores a mediados de los 50’s inauguró el campo de la lógica programada para el control de procesos industriales. No obstante aunque estos ordenadores resolvían los inconvenientes de la lógica cableada, presentaban nuevos problemas:

• Mala adaptación al entorno industrial.

• Coste elevado de los equipos.

• Necesidad de personal informático para la realización de los programas.

• Necesidad de personal especializado para el mantenimiento.

Estos problemas se solucionarían con la aparición del autómata programable o PLC.

2.1. DESARROLLO HISTÓRICO

Los orígenes de los autómatas los podemos encontrar a mediados de los 60´s cuando General Motors, preocupada por los elevados costes de los sistemas de control a base de relés, comenzó a trabajar con Digital en el desarrollo de un sistema de control que evitara los inconvenientes de la lógica programada.

Hacia la primera mitad de los 70´s los autómatas programables incorporan la tecnología de los microcontroladores aumentado de este modo sus prestaciones:realización de operaciones aritméticas, comunicación con los ordenadores, incremento de la capacidad de memoria, mejoras en los lenguajes de programación, posibilidad de entradas y salidas analógicas, posibilidad de utilizar redes de comunicaciones.

La década de los 80´s se caracteriza por la incorporación de los microprocesadores consiguiendo:

alta velocidad de respuesta, reducción de las dimensiones, mayor seguridad de funcionamiento, gran capacidad de almacenamiento de datos, lenguajes de programación más potentes (Ej. contactos, bloques funcionales, GRAFECT (GRAFica de Control de Etapa de Transición)).

2.2. APLICACIONES

Como ya se ha comentado, las primeras aplicaciones de los autómatas programables se dieron en la industria del automóvil para sustituir los complejos equipos basados en relés. Sin embargo, la disminución de tamaño y el menor coste han permitido que los autómatas sean utilizados en todos los sectores de la industria. Sólo a modo de ejemplo, se mencionan a continuación algunos de los múltiples campos de aplicación.

Automóvil:

• Cadenas de montaje, soldadura, cabinas de pintura, etc.

• Máquinas herramientas: Tornos, fresadoras, taladradoras, etc.

Plantas químicas y petroquímicas:

• Control de procesos (dosificación, mezcla, pesaje, etc).

• Baños electrolíticos, oleoductos, refinado, tratamiento de aguas residuales, etc.

Metalurgia:

• Control de hornos, laminado, fundición, soldadura, forja, grúas, etc.

Alimentación:

• Envasado, empaquetado, embotellado, almacenaje, etc.

Papeleras y madereras:

• Control de procesos, serradoras, producción de conglomerados y de laminados, etc.

Producción de energía:

• Centrales eléctricas, turbinas, transporte de combustible, energía solar, etc.

Tráfico:

• Regulación y control del tráfico, ferrocarriles, etc.

Domótica:

• Iluminación, temperatura ambiente, sistemas antirrobo, etc.

2.3. ESTRUCTURA DEL AUTOMATA PROGRAMABLE

En este apartado se describirá la parte física o hardware del autómata, comentando tanto la parte

externa como la parte interna. En la externa veremos donde y como se colocan los diferentes elementos que componen el autómata programable. En lo referente a la estructura interna veremos la función que desempeña cada uno de los diferentes elementos como CPU, E/S, fuente de alimentación, etc.

2.3.1. ESTRUCTURA EXTERNA.

El término estructura externa o configuración externa de un autómata se refiere al aspecto físico exterior del mismo, bloques o elementos en que está dividido. Actualmente son tres las estructuras más significativas que existen en el mercado:

• Estructura compacta: Este tipo de autómatas se distingue por presentar en un solo bloque todos sus elementos, esto es, fuente de alimentación, CPU, memorias, entradas/salidas, etc… Son los autómatas de gama baja o nanoautómatas los que suelen tener una estructura compacta. Su potencia de proceso suele ser muy limitada dedicándose a controlar máquinas muy pequeñas o cuadros de mando.

• Estructura semimodular: (Estructura Americana): Se caracteriza por separar las E/S del resto del autómata, de tal forma que en un bloque compacto están reunidas las CPU, memoria de usuario o de programa y fuente de alimentación y separadamente las unidades de E/S. Son los autómatas de gama media los que suelen tener una estructura semimodular (Americana).

• Estructura modular: (Estructura Europea): Su característica principal es la de que existe un módulo para cada uno de los diferentes elementos que componen el autómata como puede ser una fuente de alimentación, CPU, E/S, etc. La sujeción de los mismos se hace por carril DIN, placa perforada o sobre RACK, en donde va alojado el BUS externo de unión de los distintos módulos que lo componen. Son los autómatas de gama alta los que suelen tener una estructura modular, que permiten una gran flexibilidad en su constitución.

2.3.2. ESTRUCTURA INTERNA.

Internamente un autómata programable está formado por diferentes elementos que permiten realizar las funciones básicas para las que ha sido diseñado. Los elementos son los siguientes:

• CPU • Sistema E/S • Bus

• Memoria

• Unidad de programación

• Interfaz de comunicaciones • Fuente de alimentación

A continuación describiremos cada uno de ellos.

CPU:

La CPU (Central Procesing Unit) es la parte inteligente del sistema. Interpreta las instrucciones del programa de usuario y consulta el estado de las entradas. Dependiendo de dichos estados y del programa, ordena la activación de las salidas deseadas.

La CPU está constituida por los siguientes elementos:

• Procesador: Está constituido por el microprocesador, el reloj (generador de onda cuadrada) y algún chip auxiliar. El micropocesador es un circuito integrado (chip), que realiza una gran cantidad de operaciones, que podemos agrupar en: operaciones de tipo lógico, aritmético y de control de la transferencia de la información dentro del autómata.

• Memoria monitor del sistema: Es una memoria de tipo ROM, y además del sistema operativo contienen entre otras, las siguientes rutinas incluidas por el fabricante: inicialización tras puesta en tensión o reset, rutinas de test y de respuesta a error de funcionamiento, lectura y escritura en las interfaces de E/S

• Circuitos auxiliares asociados.

FUENTE DE ALIMENTACIÓN:

La fuente de alimentación proporciona las tensiones necesarias para el funcionamiento de los distintos circuitos del sistema. La fuente de alimentación del autómata puede incorporar una batería tampón, que se utiliza para el mantenimiento de algunas posiciones internas y del programa usuario en memoria RAM, cuando falla la alimentación o se apaga el autómata.

INTERFAZ DE COMUNICACIONES:

La interfaz de comunicaciones facilita la comunicación del autómata con el exterior, realizando básicamente dos funciones:

• Comunicación con las unidades de programación, facilitando la transferencia del programa de usuario al autómata.

• Comunicación de autómatas entre sí formando redes de comunicaciones, de forma que un proceso o instalación está controlada por más de un autómata.

BUS:

El Bus es el elemento que permite la comunicación entre los diferentes componentes del sistema. En función de la información que transmite el bus podemos diferenciar entre el bus de datos, de direcciones y de control:

• Bus de datos: permite intercambiar datos de información entre la CPU y el área de memoria. Esta información puede ser de dos tipos: instrucciones o datos.

• Bus de direcciones: permite seleccionar la posición de la memoria del dato que la CPU necesita leer o escribir.

• Bus de control: La CPU puede gestionar y controlar todo el sistema mediante la información que transmite a través de las líneas de este bus.

SISTEMAS DE E/S:

Permiten la comunicación con los captadores en el caso de las entradas y la activación de los actuadores en el caso de las salidas. Las funciones principales de estos módulos son las de adaptar las señales (tensión o intensidad) emitidas por los captadores y actuadores a las permitidas por la CPU.

• Entradas: se identifican fácilmente, ya que se caracterizan físicamente por sus bornes para acoplar los dispositivos de entrada o captadores y se indica INPUT o ENTRADA. Están numeradas y provistas de una indicación luminosa o LED. Los módulos de entrada pueden ser analógicos o digitales. Los analógicos convierten las señales recibidas en su correspondiente código binario mediante un convertidor analógico-digital (A/D). Los módulos digitales son los más usados. Actuadores que emiten señales de este tipo son los pulsadores, finales de carrera, interruptores, etc.

• Salidas: permiten actuar sobre los actuadores en función de las condiciones de entrada.

Se identifican con la indicación OUPUT o SALIDA y están provistos de indicación luminosa. Se pueden dar tres tipos de salida: a relé, a triac o a transistor. Las dos primeras se utilizan par controlar los actuadores de CA y la última para controlar los de CC. Las salidas pueden ser analógicas o digitales.

MEMORIA:

Los autómatas disponen de un área de memoria formada por zonas de trabajo específicas (memoria de programa, de datos, etc)

Las principales áreas de memoria de un PLC son:

• Memoria de programa: permite almacenar el programa de usuario. Generalmente es una memoria de tipo EEPROM, de forma que una vez almacenado el programa no es necesaria la alimentación, evitando que un corte del suministro eléctrico suponga volver a cargar el programa.

• Memoria de datos: permite almacenar los datos temporales producto de la ejecución del programa. La memoria de esta área de datos generalmente es de tipo RAM. La zona de memoria de datos está dividida en diferentes áreas según el tipo de dato almacenado (entradas, salidas, marcas, temporizadores, etc.).

• Memoria de sistema: también denominada firmware, almacena el programa que monitoriza todo el sistema. Este programa lo graba directamente el fabricante del autómata, realizando entre otras funciones la inicialización del sistema tras una conexión de la alimentación y la puesta en marcha de los diferentes modos de funcionamiento del PLC.

UNIDAD DE PROGRAMACIÓN:

La misión principal de los equipos de programación, es la de servir de interfaz entre el operador y

el autómata para introducir en la memoria de usuario el programa con las instrucciones que definen las secuencias de control.

Básicamente existen tres tipos de equipos de programación:

• Unidades de programación integradas en el propio autómata: Consola con teclado y pantalla de tubo de rayos catódicos (CRT) o de cristal líquido (LCD).

• Terminales de mando o consolas: Programador manual, semejante a una calculadora de bolsillo, más económico que la anterior.

• Ordenador personal con el software apropiado. En la actualidad casi toda la programación se realiza en entornos amigables basados cada vez más en Windows, donde se facilita la programación y la depuración del programa de control.

2.4. CICLO DE FUNCIONAMIENTO

Cuando se pone en marcha el PLC se realizan una serie de comprobaciones:

• Funcionamiento de las memorias.

• Comunicaciones internas y externas.

• Elementos de E/S.

• Tensiones correctas de la fuente de alimentación.

Una vez efectuadas estas comprobaciones y si las mismas resultan ser correctas, la CPU inicia la ejecución del programa. Esto último si el autómata se encuentra en modo RUN (marcha), ya que de estar en modo STOP aguardaría, sin ejecutar el programa, hasta la puesta en RUN.

Al producirse el paso al modo STOP o si se interrumpe la tensión de alimentación durante un tiempo lo suficientemente largo, la CPU realiza las siguientes acciones:

• Detiene la ejecución del programa.

• Pone a cero, es decir, desactiva todas las salidas.

Mientras se está ejecutando el programa, la CPU realiza en sucesivos intervalos de tiempo distintas funciones de diagnóstico (watch-dog en inglés). Cualquier anomalía que se detecte se reflejará en los indicadores de diagnóstico del procesador y dependiendo de su importancia se generará un código de error o se parará totalmente el sistema.

2.5. TÉCNICAS DE PROGRAMACIÓN

Para programar el PLC se utilizan una serie de lenguajes de programación específicos. Para ello se construyen previamente los ordinagramas que definen toda la secuencia de operaciones que debe controlar el sistema.

Los lenguajes varían según el fabricante, pero los principales lenguajes que apenas varían son los diagramas lógicos, esquemas de contactos, lista de instrucciones y GRAFCET.

La programación mediante los esquemas de contactos se asemejan a los esquemas eléctricos utilizan la siguiente simbología:

clip_image008

La programación mediante diagramas lógicos se representa mediante puertas lógicas AND, NAND, OR, NOR, etc.

clip_image011

La lista de instrucciones o mnemotécnicas es parecido al lenguaje ensamblador, pues se especifica mediante unas palabras que identifican las funciones elementales de la unidad de control.

3. CIRCUITOS LÓGICOS PROGRAMABLES

3.1. DEFINICIÓN

La lógica programable es una familia de componentes que contienen conjuntos de elementos lógicos (AND, OR, NOT, LATCH, FLIP-FLOP) que pueden configurarse en cualquier función lógica que el usuario desee y que el componente soporte. Hay varias clases de dispositivos lógicos programables: ASICs, FPGAs, PLAs, PROMs, PALs, GALs, y PLDs complejos.

3.2. ESTRUCTURA BÁSICA DE UN DISPOSITIVO LÓGICO PROGRAMABLE

Un dispositivo programable por el usuario es aquel que contiene una arquitectura general pre- definida en la que el usuario puede programar el diseño final del dispositivo empleando un conjunto de herramientas de desarrollo. Las arquitecturas generales pueden variar pero normalmente consisten en una o más matrices de puertas AND y OR para implementar funciones lógicas. Muchos dispositivos también contienen combinaciones de flip-flops y latches que pueden usarse como elementos de almacenaje para entrada y salida de un dispositivo. Los dispositivos más complejos contienen macrocélulas. Las macrocélulas permiten al usuario configurar el tipo de entradas y salidas necesarias en el diseño

3.3. DISPOSITIVOS LÓGICOS PROGRAMABLES

• ASIC: las siglas ASIC significan Circuitos Integrados de Aplicación Específica y son dispositivos definibles por el usuario. Los ASICs, al contrario que otros dispositivos, pueden contener funciones analógicas, digitales, y combinaciones de ambas. En general, son programables mediante máscara y no programables por el usuario. Esto significa que los fabricantes configurarán el dispositivo según las especificaciones del usuario. Se usan para combinar una gran cantidad de funciones lógicas en un dispositivo. Sin embargo, estos dispositivos tienen un costo inicial alto, por lo tanto se usan principalmente cuando es necesario una gran cantidad.

• PROM: Las PROM son memorias programables de sólo lectura. Aunque el nombre no implica la lógica programable, las PROM, son de hecho lógicas. La arquitectura de la mayoría de las PROM consiste generalmente en un número fijo de términos AND que alimenta una matriz programable OR. Se usan principalmente para decodificar las combinaciones de entrada en

funciones de salida.

• PAL: Los primeros dispositivos que aparecieron, fueron los denominados PAL (Programable o de trabajo Array Logic), aunque este nombre es una marca registrada por una empresa, llegó a utilizarse tanto que se adoptó como nombre genérico. Se componen de una red de puertas AND y OR interconectadas a través de fusibles.

clip_image014

Según los fusibles que se fundan, quedará una función a la salida u otra. Para representar el circuito de un PAL se Grup 9 utilizará una estructura como la de la figura, donde cada una de las líneas que están conectadas a la entrada de la puerta AND representan las cuatro líneas de entrada y la cruz representa los fusibles correspondientes.

• GAL: Genery Array Logic. Estos dispositivos se caracterizan por contener los términos AND programables y los OR fijos.

• PLA: Las PLA son matrices lógicas programables. Estos dispositivos contienen ambos términos AND y OR programables lo que permite a cualquier término AND alimentar cualquier término OR. Las PLA probablemente tienen la mayor flexibilidad frente a otros dispositivos con respecto a la lógica funcional. Normalmente poseen realimentación desde la matriz OR hacia la matriz AND que puede usarse para implementar máquinas de estado asíncronas. La mayoría de las máquinas de estado, sin embargo, se implementan como máquinas síncronas. matriz AND.

3.3. DISPOSITIVOS LÓGICOS PROGRAMABLES COMPLEJOS

Los PLDs complejos son lo que el nombre implica, Dispositivos Complejos de Lógica Programable. Se consideran PAL muy grandes que tienen algunas características de las PLA. La arquitectura básica es muy parecida a la PAL con la capacidad para aumentar la cantidad de términos AND para cualquier término OR fijo. Esto se puede realizar quitando términos AND adyacentes o empleando términos AND desde una matriz expandida. Esto permite que cualquier diseño pueda ser implementado dentro de estos dispositivos.

3.4. MATRICES DE PUERTAS PROGRAMABLES

Las FPGA son Campos de Matrices de Puertas Programables. Simplemente son matrices de puertas eléctricamente programables que contienen múltiples niveles de lógica. Las FPGA se caracterizan por altas densidades de puerta, alto rendimiento, un número grande de entradas y salidas definibles por el usuario, un esquema de interconexión flexible, y un entorno de diseño similar al de matriz de puertas. No están limitadas a la típica matriz AND-OR. Por contra, contienen una matriz interna configurable de relojes lógicos (CLBs) y un anillo de circunvalación de bloques de e/s (IOBs). Cada CLB contiene lógica programable combinacional y registros de almacenamiento. La sección de lógica combinacional es capaz de implementar cualquier función booleana de sus variables de entrada. Cada IOB puede programarse independientemente para ser una entrada, y salida con control tri-estado o un pin bidireccional. También contiene flip-flops que pueden usarse como buffers de entrada y salida. Los recursos de interconexión son una red de líneas que corren horizontalmente y verticalmente las filas y columnas entre el CLBS.

clip_image001[10]

4. MICROCONTROLADORES

Los microcontroladores están presentes en nuestra vida diaria: hornos, teclados, ratones,

televisiones, automóviles y un largo etcétera. Un controlador es un dispositivo que se emplea para el gobierno de uno o varios procesos.

Un microcontrolador está compuesto por los siguientes elementos:

• Unidad de control de proceso (UCP).

• Memoria RAM para contener los datos.

• Memoria para el programa ROM/PROM/EPROM.

• Líneas de entrada y salida.

• Diversos módulos para controlar las salidas y entradas (temporizadores, puertos serie y paralelos, conversores analógicos-digitales (CAD), conversores digitales-analógicos (CDA)…).

Las ventajas de usar un microcontrolador se pueden resumir a continuación:

• Aumento de las prestaciones y la flexibilidad.

• Aumento de la fiabilidad: El microcontrolador reemplaza un elevado número de elementos, por lo cual disminuye el número de averías.

• Reducción en coste y área del producto acabado (disminuye el volumen, mano de obra y el stock a almacenar).

5. MICROPROCESADORES

En oposición al principio de máquina cableada (un circuito específico para cada aplicación), surge

el de máquina programada. Con la máquina programada, se empleará una estructura principal, común a todas las aplicaciones, capaz de realizar operaciones básicas, las cuales debían ordenarse mediante un conjunto de instrucciones que componen un programa específico para cada aplicación.

La principal diferencia entre las diferentes máquinas programas radica esencialmente en el programa de instrucciones que deben ejecutar. El microprocesador o unidad de proceso (CPU) es el componente principal de todos los que constituyen un sistema digital programable. La CPU realiza operaciones lógicas, aritméticas y funciones de control.

Técnicamente se aplica la denominación de microprocesador a un simple circuito integrado que contiene los elementos que constituyen la unidad central de proceso (CPU). El microprocesador por sí solo no es funcional y necesita la colaboración de la memoria (donde están almacenados las instrucciones a ejecutar y los datos para realizar las operaciones), los módulos de entrada y salida (que la comunican con el mundo exterior). Todos ellos conforman una microcomputadora.

Diferencias entre el microcontrolador y el microprocesador:

Si sólo se dispusiese de un modelo de microcontrolador, éste debería tener muy potenciados todos sus recursos para poderse adaptar a las exigencias de las diferentes aplicaciones, lo que supondría un despilfarro económico y de prestaciones.

En cambio un microprocesador ha de ser lo suficientemente genérico para poder ser aplicable a un número elevado de aplicaciones (control, cálculo, ofimática, diseño). Por lo tanto los microcontroladores están adaptados a tareas específicas de control mientras que los microprocesadores son muchos más genéricos en cuanto su aplicación.

5.1. ESTRUCTURA BÁSICA

Un microprocesador posee dos zonas fundamentales: la de proceso y la zona de control. Cada microprocesador necesita comunicarse con el mundo exterior (introducir la información a procesar y transmitir los resultados), esta operación la lleva a cabo mediante los módulos de entrada y salida (E/S). Por lo tanto los módulos de E/S sirven de interfaz entre los periféricos (mundo externo) y la CPU.

Básicamente la CPU está compuesta por la Unidad de Control, un conjunto de registros (almacenar resultados intermedios) y la unidad aritmético lógica (bloque específico para la realización de cálculos).

• Unidad de control: Es un bloque de lógica cableada que tiene por misión controlar y sincronizar las transferencias de datos y las operaciones que se realizan con ellos. La UC recibe información del resto del sistema (buses de datos, reloj, registro de instrucción…), los interpreta y actúa de forma adecuada sobre la memoria, los dispositivos de E/S, etc.…

• Registros: Existen dos tipos de registro: los de propósito general, que se usan para almacenar resultados de operaciones internas y otros de propósito específico como los que se detallan a continuación:

Contador de programa: contiene la dirección de memoria de la próxima instrucción a ejecutar.

Registro de instrucciones: contiene la instrucción a ejecutar.

Registro de direcciones: contiene la dirección de la posición de memoria que se quiere acceder.

Registro de memoria: registro intermedio que almacena el dato que va camino del bus de datos.

Acumulador: Registro donde se almacena la última operación realizada por la unidad aritmético lógica (ALU).

Registro de estatus: Almacena si se ha producido un cierto suceso en la CPU (e.j. si la última operación dio como resultado cero, un número negativo, desbordamiento o acarreo entre otros sucesos).

• Unidad aritmético lógica (ALU): Es un circuito combinacional capaz de realizar operaciones aritméticas (suma, resta, multiplicación, división) y lógicas (AND, OR, XOR, NOT). Necesita uno o más registro de entrada (operándos) y como salidas un registro de estatus (indica un cierto suceso en la última operación ejecutada) y el acumulador (último resultadoobtenido).

clip_image017

5.2. FUNCIONAMIENTO DE LA CPU

Describiremos a continuación y de forma resumida como es el ciclo de trabajo de la CPU.

1. El contador de programa nos proporciona la dirección de memoria donde está almacenada la siguiente instrucción a ejecutar. Por lo tanto la ponemos en el buffer de salida que es conectado al bus de direcciones.

2. Una vez la dirección esta en el bus de direcciones, accedemos a la memoria y ésta proporcionará la instrucción colocándola en el bus de datos (de igual manera se pueden obtener los datos sobre los que la CPU realizará operaciones).

3. Si es una instrucción lo que viene por el registro de instrucciones esta se almacenará en el registro de instrucciones y una vez allí se decodificará. Si fuera un dato lo almacenaríamos en unos de los registros auxiliares, para después usarlo como operando.

4. La unidad de control, con la información del sistema y la instrucción decodificada manda las órdenes pertinentes al resto del sistema (ALU, registros…) de tal forma que se ejecute el programa/aplicación. Acto seguido actualiza el contador de programa en una unidad o más (en caso de que haya una ruptura de la ejecución secuencial del programa como por ejemplo: saltos, ejecución condicional…).

5. Se vuelve al paso 1.

5.3. VIAS DE COMUNICACIÓN EN EL MICROPROCESADOR

Existen tres vías de comunicación dentro del microprocesador: Bus de direcciones, bus de datos y bus de control:

– Bus de direcciones: Por él se selecciona la posición de memoria o el dispositivo al que se va a escribir o leer los datos. El número de líneas que lo componen determina el rango de memoria que podemos acceder. Por ejemplo con 8bits podremos acceder 128 posiciones diferentes de memoria, con 16bits accederemos a 65536 posiciones y así sucesivamente.

– Bus de datos: Conjunto de líneas por donde se transmiten los datos. Por lo general a los microprocesadores se les divide por el ancho del bus. Por lo general aquellos que tienen 8 o

16 bits se reservan para procesos industriales. Los procesadores de sobremesa tienen 32 ó

64bits (Ej. Pentium de Intel , Athlon de AMD).

– Bus de control: Utilizado para controlar otros módulos y periféricos en el sistema.

5.4 ENTRADAS Y SALIDAS

Existen tres procedimientos para introducir/transmitir datos hacia/desde el microprocesador:

a) Mediante software: Se consultan los periféricos, para detectar si quieren enviar datos a la CPU. Al realizarse el control por software no es posible atender a los periféricos en tiempo real, sino en determinados momentos pre-definidos por software (sistema síncrono).

b) Acceso directo a memoria (DMA): Se hace mediante un dispositivo auxiliar llamado DMA. Cuando un dispositivo periférico quiere realizar operaciones de E/S, se lo indica al DMA, este detiene la CPU. De este modo la CPU no se ocupa de estas funciones sino un controlador específico, pudiendo alcanzar altas velocidades de transmisión.

c) Mediante interrupciones: Los periféricos provocan una interrupción a la CPU para reclamar su atención. Las interrupciones tienen carácter prioritario, según la importancia del periférico. La ventaja es un menor tiempo de respuesta que cuando se usa el método por software (a).

7. CONCLUSIONES

En este tema se han tratado los dispositivos de control programado de una manera introductoria,

tratando de no profundizar pero afianzando términos que son familiares a los alumnos. A lo largo de la presentación hemos hecho hincapié en conceptos que creemos básicos que el alumno ha de comprender tales como CPU, memoria, microcontrolador, microprocesador y su funcionamiento básico. Muchos de los ordenadores/computadores de hoy en día funcionan bajo los mismos principios presentados en este tema aunque usando técnicas más avanzadas. Por lo tanto la inclusión de este tema es fundamental en la asignatura de tecnología.

8. BIBLIOGRAFÍA BÁSICA

1. Introducción a la informática. Ed. McGraw-Hill, Madrid 1995

2. Wikipedia

3. Como funcionan los ordenadores. Ed. Marcombo. Barcelona 1992

4. The Computer Engineering Handbook. Ed. CRC Press. Vojin G. Oklobdzija. 2002