Prerrequisito: Introducción de la Unidad de Control y su Diseño
Unidad de control
microprogramada: la unidad de control microprogramada produce señales de control mediante el uso de microinstrucciones.
Microprograma:
- Un programa es un conjunto de instrucciones. Una instrucción requiere un conjunto de microoperaciones.
- Las microoperaciones se realizan utilizando señales de control.
- Aquí, estas señales de control se generan utilizando microinstrucciones.
- Esto significa que cada instrucción requiere un conjunto de microinstrucciones
- Un conjunto de microinstrucciones se denomina microprograma.
- Los microprogramas para todas las instrucciones se almacenan en una pequeña memoria llamada memoria de control.
La memoria de control está presente dentro del procesador.
Trabajo:
considere una instrucción que se obtiene de la memoria principal en el registro de instrucciones (IR). El procesador usa su código de operación único para identificar la dirección de la primera microinstrucción. Esa dirección se carga en CMAR (Registro de dirección de memoria de control). Esta dirección se decodifica para decidir la instrucción de memoria correspondiente de la Memoria de control. Las microinstrucciones solo tendrán un campo de control. El campo de control Indica las señales de control a generar. La mayoría de las microinstrucciones no tendrán un campo de dirección. Por lo general, µPC simplemente se incrementará después de cada microinstrucción.
Esto es siempre y cuando el microprograma se esté ejecutando secuencialmente. Si solo hay una microinstrucción de sucursal, entonces habrá una dirección archivada. Si la sucursal es incondicional, la dirección de la sucursal se cargará directamente en CMAR. Para bifurcaciones condicionales, la condición de bifurcación verificará la bandera apropiada. Esto se hace usando un MUX que tiene todas las entradas de bandera. Si la condición es verdadera, el mux le informará a CMAR que cargue la dirección de la sucursal. Si la condición es falsa, CMAR simplemente se incrementará.
La memoria de control generalmente se implementa mediante flash ROM, ya que no es volátil.
ventajas :
- La principal ventaja es la flexibilidad.
- Cualquier cambio en la unidad de control se puede realizar simplemente cambiando la microinstrucción.
- Se puede depurar fácilmente en comparación con la unidad de control cableada.
- La mayoría de las microinstrucciones se ejecutan secuencialmente, no requieren ningún campo de dirección.
- Reducción del tamaño de la memoria de control.
Desventajas:
- La memoria de control debe estar presente dentro del procesador, por lo tanto, aumenta el tamaño del procesador.
- Esto también aumenta el costo del procesador.
Aplicaciones de la unidad de control microprogramada: la
microprogramación tiene muchas ventajas, como flexibilidad, simplicidad, rentabilidad, etc.
Por lo tanto, tiene una contribución importante en las siguientes aplicaciones:
- Desarrollo de unidades de control:
los procesadores modernos tienen conjuntos de instrucciones muy grandes y complejos. La microprogramación se utiliza para fabricar unidades de control de tales procesadores, porque es mucho menos compleja y se puede modificar fácilmente. - Compatibilidad con lenguajes de alto nivel: los lenguajes
modernos de alto nivel tienen tipos de datos más avanzados y complejos. La microprogramación puede brindar soporte para tales tipos de datos directamente desde el nivel del procesador. Por lo tanto, el lenguaje se vuelve fácil de compilar y también más rápido de ejecutar. - Personalización de la unidad de control por parte del usuario: dado que la unidad de
control se desarrolla mediante software, se puede reprogramar fácilmente. Esto se puede utilizar para modificaciones personalizadas de la unidad de control. Para este propósito, la memoria de control debe ser escribible como RAM o flash ROM. - Emulación:
la emulación es cuando se hace que un procesador (digamos A) emule o se comporte como otro procesador (digamos B). Para hacer esto, A debe poder ejecutar las instrucciones de B. Si reprogramamos la memoria de control de A, igual que la de B, entonces A podrá emular el comportamiento de B, para cada instrucción. Esto es posible solo en unidades de control microprogramadas.
Se usa generalmente cuando un procesador principal tiene que emular el comportamiento de un coprocesador matemático. - Mejora del sistema operativo: la
microprogramación se puede utilizar para implementar funciones complejas y seguras del sistema operativo. Esto no solo hace que el sistema operativo sea más potente y eficiente, sino que, lo que es más importante, lo hace más seguro, ya que proporciona al sistema operativo un mayor grado de protección contra ataques de virus maliciosos. - Microdiagnósticos o depuración de errores:
dado que las unidades de control microprogramadas están basadas en software, la depuración de un error es mucho más fácil en comparación con hacer lo mismo con una unidad de control cableada compleja. Esto permite monitorear, detectar y reparar cualquier tipo de error del sistema en la unidad de control. También se puede utilizar como sustituto del tiempo de ejecución, si falla el componente cableado correspondiente. - Desarrollo de procesadores de propósito especial:
no todos los procesadores son de propósito general. Muchas aplicaciones requieren procesadores de propósito especial como DSP (procesadores de señales digitales) para la comunicación, GPU (unidad de procesamiento gráfico) para el procesamiento de imágenes.
Tienen conjuntos de instrucciones complejos y también necesitan actualizarse constantemente. La unidad de control microprogramada es la mejor opción para ellos
Publicación traducida automáticamente
Artículo escrito por goutamnagpal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA