La microprogramación es un método para implementar sistemáticamente la unidad de control de una computadora. En pocas palabras, es el proceso de crear un microcódigo para un microprocesador. Microcode es un código subsidiario que dicta cómo debe actuar un microprocesador cuando ejecuta instrucciones en lenguaje de máquina, y Microcode a veces se denomina Microprogram cuando se usa en una operación específica. Una unidad de control microprogramada, por otro lado, guarda valores de control binario como palabras en la memoria.
Microprogramación horizontal versus microprogramación vertical
La principal diferencia entre la microprogramación horizontal y la microprogramación vertical es que su soporte, el grado de paralelismo utiliza la microprogramación y la flexibilidad. Ambos son diferentes entre sí cuando se trata de codificar con bits. También difieren en su diseño y procesamiento, lo que les permite encontrar los datos.
Las señales de control en una unidad de control microprogramada horizontal están representadas en formato binario decodificado. Cada bit en microprogramación horizontal está relacionado con un solo punto de control, lo que demuestra que se debe ejecutar la microoperación aplicable. Debido a que cada microinstrucción puede requerir varios recursos al mismo tiempo, tiene el potencial de mejorar el uso del hardware y al mismo tiempo reducir la cantidad de microinstrucciones requeridas por microprograma.
Las señales de control en una unidad de control microprogramada vertical están codificadas en formato binario. Cada microoperación tiene su código, que el decodificador traduce en distintas señales de control. Los campos de microinstrucción se utilizan por completo porque solo se define la microoperación a realizar. Además, los microprogramas verticales son fáciles de escribir que los microprogramas horizontales.
Tabla de comparación entre microprogramación horizontal y vertical
Grado Parámetros de comparación Microprogramación horizontal 1945901 Codificación de ROM que la microprogramación vertical Hace más uso de la codificación de ROM Hardware adicional No se requiere hardware adicional El hardware adicional está en forma de decodificadores Secuencia Utiliza microinstrucción horizontal Utiliza microinstrucción vertical
¿Qué es la microprogramación horizontal?
En la unidad de control microprogramada horizontal, las señales de control se muestran en el formato binario decodificado, es decir, 1but / CS allí ‘ n ’ las señales de control necesitan n pero codifican.
Cada bit en microprogramación horizontal está relacionado con un punto de control singular, lo que demuestra que se debe realizar la microoperación relevante. Debido a que cada microinstrucción puede administrar muchos resorts al mismo tiempo, tiene el potencial de mejorar el uso del hardware y al mismo tiempo requerir menos microinstrucciones por microprograma. Los microprogramas horizontales, por otro lado, típicamente representan un conjunto de microoperaciones que se llevan a cabo simultáneamente.
Permite más paralelismo mientras utiliza menos codificación y separación de los campos de control. El desarrollo de microprogramas que utilizan recursos de manera óptima o eficiente, por otro lado, es un desafío difícil. Debido a que cada bit de control es independiente de los demás, la microprogramación horizontal proporciona mucha libertad. Debido a que es más largo que las microinstrucciones verticales, generalmente proporciona más información.
La microprogramación horizontal, como el lenguaje de máquina tradicional, utiliza una forma secuencial de expresar las siguientes especificaciones en el software racional. Cada bit está vinculado a un solo puesto de comando, lo que indica que corresponde al punto de control relevante. Se llevará a cabo una microoperación. Ramas que son tanto condicional como incondicional. La secuencia debe romperse utilizando características de control.
¿Qué es la microprogramación vertical?
Las señales de control se definen en formato binario codificado en unidades de control microprogramadas verticales, y las señales de control ‘ n ’ requieren codificación de bit log2n. La microprogramación vertical, a diferencia de la microprogramación horizontal, utiliza un formato flexible y un mayor grado de codificación. No solo reduce la longitud de la microinstrucción, sino que también evita que la longitud de la microinstrucción se vea directamente afectada por una mayor capacidad de memoria. En la mayoría de los casos, cada microinstrucción vertical representa una sola microoperación.
Los microprogramas verticales tienen una mayor densidad de código, lo que beneficia el tamaño de la tienda de control. La microinstrucción vertical es similar al estilo tradicional del lenguaje de máquina, que consiste en una sola operación y unos pocos operandos.
Escribir microprogramas verticales es más fácil que escribir microprogramas horizontales. La microinstrucción vertical se asemeja al lenguaje clásico de la máquina, que tiene solo una acción y unos pocos operandos. Como resultado, la microprogramación es sencilla de implementar. Por lo general, consta de cuatro a seis campos, cada uno con 16 a 32 bits por instrucción.
Los microprogramas verticales tienen una saturación de código más alta, lo que beneficia la capacidad de la tienda de control. La microinstrucción vertical es similar al estilo tradicional del lenguaje de máquina, que consta de una sola función y unos pocos elementos de procesamiento. Cada microinstrucción vertical define una microoperación específica, con operandos que indican la fuente de datos y sumideros.
Diferencia principal entre microprogramación horizontal y microprogramación vertical
- La microprogramación horizontal permite un mayor grado de paralelismo; si el grado es n, entonces n las señales de control están habilitadas al mismo tiempo. Por otro lado, la microprogramación horizontal permite un bajo grado de paralelismo; si el grado es 0 o 1, solo se habilita una señal de control a la vez.
- La microprogramación horizontal es menos flexible que la unidad de control de microprogramación vertical.
- La microprogramación horizontal hace menos uso de la codificación RaoM, mientras que la microprogramación vertical hace más codificación ROM para reducir la longitud de la palabra de control.
- Tampoco se requiere hardware adicional para la microprogramación horizontal, pero en la microprogramación vertical se necesita hardware adicional en forma de decodificadores para generar señales de control.
- La microprogramación horizontal emplea microinstrucción horizontal, en la que cada bit en el campo de control está asociado con una línea de control. En el otro, la microprogramación vertical emplea microinstrucción vertical, en la que a cada acción se le asigna un código, que luego se traduce en señales de control individuales por decodificadores.
Síntesis
La microprogramación fue una solución enormemente efectiva para el desafío de construir sistemáticamente controladores, y se utilizó en la gran mayoría de los procesadores ( con ligeras alteraciones ) desde mediados de la década de 1960 hasta finales de la década de 1980.
Las microinstrucciones verticales, a diferencia de las microinstrucciones horizontales, representan microoperaciones individuales. Los microprogramas verticales codifican los bits de control, pero los microprogramas horizontales permiten un alto grado de paralelismo con campos de baja codificación y control separados. La microprogramación horizontal es rápida que la unidad de control microprogramada vertical.
La microprogramación horizontal admite palabras de control más largas, mientras que la microprogramación vertical admite palabras de control más cortas. La decisión entre las dos formas debe tomarse con consideración. En la práctica, sin embargo, los diseñadores combinan tipos de microinstrucción horizontal y vertical para crear una estructura que sea compacta y eficiente.
- https://www.lkouniv.ac.in/site/writereaddata/siteContent/202004160626023780rohit_engg_horizontal_vertical_program.pdf
Contenido