Sistemas de microprocesador
El uso de sistemas de microprocesadores en casi todos los dispositivos eléctricos es la característica más importante de la infraestructura técnica de la sociedad moderna. Los sistemas de electricidad, industria, transporte y comunicación dependen en gran medida de los sistemas de control informáticos. Los sistemas de microprocesadores están integrados en instrumentos de medición, dispositivos eléctricos, instalaciones de iluminación, etc.
Todo esto obliga al ingeniero eléctrico a conocer al menos los conceptos básicos de la tecnología de microprocesadores.
Los sistemas de microprocesadores están diseñados para automatizar el procesamiento de información y controlar varios procesos.
El término "sistema de microprocesador" es muy amplio e incluye conceptos tales como "máquina de computación electrónica (ECM)", "computadora de control", "computadora" y otros.
El sistema de microprocesador incluye Hardware o en inglés — hardware and software (Software) — software.
información digital
El sistema de microprocesador funciona con información digital, que es una serie de códigos numéricos.
En el núcleo de cualquier sistema de microprocesador hay un microprocesador que solo puede aceptar números binarios (compuestos por 0 y 1).Los números binarios se escriben utilizando el sistema numérico binario. Por ejemplo, en la vida cotidiana usamos un sistema numérico decimal que usa diez caracteres o dígitos para escribir números, 0,1,2,3,4,5,6,7,8,9. En consecuencia, en el sistema binario solo hay dos símbolos (o dígitos) de este tipo: 0 y 1.
Es necesario comprender que el sistema numérico son solo las reglas para escribir números, y la elección del tipo de sistema estará determinada por la facilidad de uso. La elección de un sistema binario se debe a su simplicidad, lo que significa la fiabilidad de los dispositivos digitales y la facilidad de su implementación técnica.
Considere las unidades de medida de la información digital:
Un bit (del inglés «BInary digiT» — dígito binario) toma solo dos valores: 0 o 1. Puede codificar el valor lógico «sí» o «no», el estado «encendido» o «apagado», el estado « abierto» «o» cerrado «etc.
Un grupo de ocho bits se denomina byte, por ejemplo 10010111. Un byte le permite codificar 256 valores: 00000000 — 0, 11111111 — 255.
Un bit es la unidad de información más pequeña.
Byte: la unidad más pequeña de procesamiento de información. Byte: parte de una palabra de máquina, que generalmente consta de 8 bits y se usa como una unidad para la cantidad de información durante su almacenamiento, transmisión y procesamiento en una computadora. Un byte sirve para representar letras, sílabas y caracteres especiales (generalmente ocupando los 8 bits) o dígitos decimales (cada 2 dígitos en 1 byte).
Dos bytes contiguos se denominan palabra, 4 bytes palabra doble, 8 bytes palabra cuádruple.
Casi toda la información que nos rodea es analógica. Por lo tanto, antes de que la información ingrese al procesador para su procesamiento, se convierte utilizando un ADC (convertidor de analógico a digital).Además, la información está codificada en un formato determinado y puede ser digital, lógico, textual (simbólico), gráfico, video, etc.
Por ejemplo, se utiliza una tabla de códigos ASCII (del Código estándar inglés americano para el intercambio de información) para codificar información de texto. Se escribe un carácter en un byte, que puede tomar 256 valores. La información gráfica se divide en puntos (píxeles) y el color y la posición de cada punto se codifica horizontal y verticalmente.
Además de los sistemas binario y decimal, MS utiliza un sistema hexadecimal en el que se utilizan los símbolos 0 ... 9 y A ... F para escribir números. Su uso se debe a que un byte se describe con dos -Número hexadecimal de dígitos, que reduce en gran medida el registro del código numérico y lo hace más legible (11111111 — FF).
Tabla 1 — Escritura de números en diferentes sistemas numéricos
Para determinar el valor del número (por ejemplo, el valor del número 100 para diferentes sistemas numéricos puede ser 42, 10010, 25616), al final del número agregue una letra latina que indique el sistema numérico: para números binarios la letra b, para números hexadecimales — h , para números decimales — d. Un número sin una designación adicional se considera un decimal.
Convertir números de un sistema a otro y operaciones aritméticas y lógicas básicas con números le permite hacer una calculadora de ingeniería (aplicación estándar del sistema operativo Windows).
Estructura de un sistema de microprocesador
El sistema de microprocesador se basa en un microprocesador (procesador) que realiza funciones de procesamiento y control de información. El resto de los dispositivos que componen el sistema del microprocesador sirven al procesador ayudándolo a funcionar.
Los dispositivos obligatorios para crear un sistema de microprocesador son puertos de entrada / salida y en parte memoria... Los puertos de entrada - salida conectan el procesador con el mundo exterior al proporcionar información para procesar y generar los resultados del procesamiento o las acciones de control. Botones (teclado), varios sensores están conectados a los puertos de entrada; a los puertos de salida: dispositivos que permiten el control eléctrico: indicadores, pantallas, contactores, válvulas de solenoide, motores eléctricos, etc.
La memoria se necesita principalmente para almacenar un programa (o un conjunto de programas) necesarios para que el procesador funcione. Un programa es una secuencia de comandos que el procesador entiende, escrita por un humano (generalmente un programador).
La estructura de un sistema de microprocesador se muestra en la Figura 1. De forma simplificada, el procesador consta de una unidad lógica aritmética (ALU) que procesa información digital y una unidad de control (CU).
La memoria generalmente incluye memoria de solo lectura (ROM), que no es volátil y está destinada al almacenamiento de información a largo plazo (por ejemplo, programas), y memoria de acceso aleatorio (RAM), destinada al almacenamiento temporal de datos.
Figura 1 — La estructura del sistema de microprocesador
El procesador, los puertos y la memoria se comunican entre sí a través de buses. Un bus es un conjunto de cables que están funcionalmente unidos. Un solo conjunto de buses del sistema se denomina bus intrasistema, en el que hay:
-
bus de datos DB (Data Bus), a través del cual se intercambian datos entre el procesador, la memoria y los puertos;
-
bus de direcciones AB (Address Bus), utilizado para direccionar las celdas de memoria y los puertos del procesador;
-
bus de control CB (Bus de control), un conjunto de líneas que transmiten varias señales de control desde el procesador a dispositivos externos y viceversa.
microprocesadores
Microprocesador: un dispositivo controlado por software diseñado para procesar información digital y controlar el proceso de este procesamiento, realizado en forma de uno (o varios) circuitos integrados con un alto grado de integración de elementos electrónicos.
Un microprocesador se caracteriza por una gran cantidad de parámetros, ya que es un dispositivo complejo controlado por software y un dispositivo electrónico (microcircuito). Por lo tanto, para un microprocesador, tanto el tipo de caja como el conjunto de instrucciones del procesador... Las capacidades de un microprocesador están definidas por el concepto de arquitectura de microprocesador.
El prefijo «micro» en el nombre del procesador significa que se implementa utilizando tecnología micron.
Figura 2: vista externa del microprocesador Intel Pentium 4
Durante la operación, el microprocesador lee los comandos del programa desde la memoria o un puerto de entrada y los ejecuta. El significado de cada comando está determinado por el conjunto de instrucciones del procesador. El conjunto de instrucciones está integrado en la arquitectura del microprocesador, y la ejecución del código de comando se expresa en la ejecución de ciertas microoperaciones por parte de los elementos internos del procesador.
Arquitectura del microprocesador: esta es su organización lógica; define las capacidades del microprocesador en términos de implementación de hardware y software de las funciones requeridas para construir un sistema de microprocesador.
Características principales de los microprocesadores:
1) Frecuencia de reloj (unidad de medida MHz o GHz) — el número de pulsos de reloj en 1 segundo.Los pulsos de reloj son generados por un generador de reloj, que generalmente se encuentra dentro del procesador. Debido a que todas las operaciones (instrucciones) se realizan en ciclos de reloj, el rendimiento del trabajo (la cantidad de operaciones realizadas por unidad de tiempo) depende de la frecuencia del reloj. La frecuencia del procesador puede variar dentro de ciertos límites.
2) Procesador de bits (8, 16, 32, 64 bits, etc.): especifica el número de bytes de datos procesados en un ciclo de reloj. El ancho de bits de un procesador está determinado por el ancho de bits de sus registros internos. Un procesador puede ser de 8 bits, 16 bits, 32 bits, 64 bits, etc., es decir. los datos se procesan en fragmentos de 1, 2, 4, 8 bytes. Está claro que cuanto mayor es la profundidad de bits, mayor es la productividad del trabajo.
Arquitectura interna del microprocesador
En la Figura 3 se muestra una arquitectura interna simplificada de un microprocesador típico de 8 bits. La estructura del microprocesador se puede dividir en tres partes principales:
1) Registros para almacenamiento temporal de comandos, datos y direcciones;
2) Unidad aritmética lógica (ALU) que realiza operaciones aritméticas y lógicas;
3) Circuito de control y temporización: proporciona selección de comandos, organiza el funcionamiento de la ALU, proporciona acceso a todos los registros del microprocesador, percibe y genera señales de control externas.
Figura 3 — Arquitectura interna simplificada de un microprocesador de 8 bits
Como puede ver en el diagrama, el procesador se basa en registros, que se dividen en registros especiales (con un propósito específico) y de propósito general.
Contador de programa (computadora) — un registro que contiene la dirección del siguiente byte de comando. El procesador necesita saber qué comando se ejecutará a continuación.
Batería: un registro utilizado en la mayoría de las instrucciones para el procesamiento lógico y aritmético; es a la vez la fuente de uno de los bytes de datos necesarios para la operación de ALU y el lugar donde se coloca el resultado de la operación de ALU.
Un registro de función (o registro de bandera) contiene información sobre el estado interno del microprocesador, específicamente el resultado de la última operación de ALU. Un registro de bandera no es un registro en el sentido habitual, sino simplemente un conjunto de flip flops (bandera hacia arriba o hacia abajo. Por lo general, hay banderas de cero, desbordamiento, negativas y de acarreo).
Puntero de pila (SP): realiza un seguimiento de la posición de la pila, es decir, contiene la dirección de su última celda utilizada. Pila: una forma de organizar el almacenamiento de datos.
Un registro de comando contiene el byte de comando actual que está siendo decodificado por el decodificador de comando.
Las líneas de bus externas están aisladas de las líneas de bus internas mediante búfer, y los principales elementos internos están conectados mediante un bus de datos interno de alta velocidad.
Para mejorar el rendimiento de un sistema multiprocesador, las funciones del procesador central se pueden distribuir entre varios procesadores. Para ayudar al procesador central, la computadora a menudo introduce coprocesadores, enfocados en la ejecución eficiente de funciones específicas. Coprocesadores matemáticos y gráficos generalizados, entrada y salida que descargan al procesador central de operaciones simples pero numerosas de interacción con dispositivos externos.
En la etapa actual, la dirección principal para aumentar la productividad es el desarrollo de procesadores de múltiples núcleos, es decir. combinar dos o más procesadores en un caso para realizar varias operaciones en paralelo (simultáneamente).
Intel y AMD son las empresas líderes en el diseño y fabricación de procesadores.
Algoritmo del sistema de microprocesador
Algoritmo: una receta precisa que establece de manera única el proceso de transformación de la información inicial en una secuencia de operaciones que permiten resolver un conjunto de tareas de cierta clase y obtener el resultado deseado.
El principal elemento de control de todo el sistema de microprocesador es un procesador... Con la excepción de algunos casos especiales, controla todos los demás dispositivos. Los dispositivos restantes, como la RAM, la ROM y los puertos de E/S, están subordinados.
Tan pronto como se enciende, el procesador comienza a leer códigos digitales del área de memoria que está reservada para almacenar programas. La lectura se realiza secuencialmente celda por celda, comenzando desde la primera. Una celda contiene datos, direcciones y comandos. Una instrucción es una de las acciones elementales que puede realizar un microprocesador. Todo el trabajo del microprocesador se reduce a la lectura secuencial y ejecución de comandos.
Considere la secuencia de acciones del microprocesador durante la ejecución de los comandos del programa:
1) Antes de que se ejecute la siguiente instrucción, el microprocesador almacena su dirección en el contador del programa de la computadora.
2) El MP accede a la memoria en la dirección contenida en la computadora y lee de la memoria el primer byte del siguiente comando en el registro de comando.
3) El decodificador de comando decodifica (descifra) el código de comando.
4) De acuerdo con la información recibida del decodificador, la unidad de control genera una secuencia ordenada en el tiempo de microoperaciones que ejecutan las instrucciones del comando, que incluyen:
— recupera operandos de registros y memoria;
— realiza operaciones aritméticas, lógicas o de otro tipo con ellos según lo prescrito por el código de comando;
— dependiendo de la longitud del comando, cambia el contenido de la computadora;
— transfiere el control al siguiente comando cuya dirección está nuevamente en el contador del programa de computadora.
El conjunto de instrucciones para un microprocesador se puede dividir en tres grupos:
1) Comandos para mover datos
La transferencia se realiza entre memoria, procesador, puertos de E/S (cada puerto tiene su propia dirección), entre registros del procesador.
2) Comandos de transformación de datos
Todos los datos (texto, imagen, video, etc.) son números y solo se pueden realizar operaciones aritméticas y lógicas con números. Por lo tanto, los comandos de este grupo incluyen sumas, restas, comparaciones, operaciones lógicas, etc.
3) Transferencia del mando de control
Es muy raro que un programa consista en una sola instrucción secuencial. La mayoría de los algoritmos requieren la bifurcación del programa. Para que el programa cambie el algoritmo de su trabajo, dependiendo de cualquier condición, se utilizan comandos de transferencia de control. Estos comandos aseguran el flujo de ejecución del programa a lo largo de diferentes rutas y organizan bucles.
Dispositivos externos
Los dispositivos externos incluyen todos los dispositivos que son externos al procesador (excepto la RAM) y que están conectados a través de puertos de E/S. Los dispositivos externos se pueden clasificar en tres grupos:
1) dispositivos de comunicación humano-computadora (teclado, monitor, impresora, etc.);
2) dispositivos para comunicación con objetos de control (sensores, actuadores, ADC y DAC);
3) dispositivos de almacenamiento externo de gran capacidad (disco duro, disquetes).
Los dispositivos externos están conectados al sistema del microprocesador físicamente, a través de conectores y lógicamente, a través de puertos (controladores).
Se utiliza un sistema de interrupción (mecanismo) para interconectar el procesador y los dispositivos externos.
sistema de interrupción
Este es un mecanismo especial que permite en cualquier momento, a través de una señal externa, obligar al procesador a detener la ejecución del programa principal, realizar operaciones relacionadas con el evento que provocó la interrupción y luego volver a la ejecución del programa principal. .
Cada microprocesador tiene al menos una entrada de solicitud de interrupción INT (de la palabra Interrupción).
Consideremos un ejemplo de la interacción de un procesador de computadora personal con un teclado (Figura 4).
Teclado: un dispositivo para ingresar información simbólica y comandos de control. Para conectar el teclado, la computadora tiene un puerto de teclado especial (chip).
Figura 4 — Operación de la CPU con el teclado
Algoritmo de trabajo:
1) Cuando se presiona una tecla, el controlador de teclado genera un código numérico. Esta señal va al chip del puerto del teclado.
2) El puerto del teclado envía una señal de interrupción a la CPU. Cada dispositivo externo tiene su propio número de interrupción por el cual el procesador lo reconoce.
3) Después de recibir una interrupción del teclado, el procesador interrumpe la ejecución del programa (por ejemplo, el editor de Microsoft Office Word) y carga el programa para procesar códigos de teclado desde la memoria. Tal programa se llama controlador.
4) Este programa dirige el procesador al puerto del teclado y el código numérico se carga en el registro del procesador.
5) El código digital se almacena en la memoria y el procesador continúa realizando otra tarea.
Debido a la alta velocidad de operación, el procesador ejecuta una gran cantidad de procesos simultáneamente.