Segmentación (informática)

Segmentación (informática)
Programa de instrucciones en el Intel Pentium 4.

La segmentación (en inglés pipelining, literalmente tuberia o cañeria) es un método por el cual se consigue aumentar el rendimiento de algunos sistemas electrónicos digitales. Es aplicado, sobre todo, en microprocesadores. El nombre viene de que para impulsar el gas en un oleoducto a la máxima velocidad es necesario dividir el oleoducto en tramos y colocar una bomba que dé un nuevo impulse al gas. El símil con la programación existe en que los cálculos deben ser registrados o sincronizados con el reloj cada cierto tiempo para que la ruta crítica (tramo con más carga o retardo computacional entre dos registros de reloj) se reduzca.

La ruta crítica es en realidad la frecuencia máxima de trabajo alcanzada por el conjunto. A mayor ruta crítica (tiempo o retraso entre registros) menor es la frecuencia máxima de trabajo y a menor ruta crítica mayor frecuencia de trabajo. La una es la inversa de la otra. Repartir o segmentar equitativamente el cálculo hace que esa frecuencia sea la óptima a costa de más área para el almacenamiento o registro de los datos intervinientes y de un retraso o latencia (en ciclos de reloj/tiempo) en la salida del resultado equivalente al número de segmentaciones o registros realizados. La ventaja primordial de este sistema es que, tal y como se muestra en la imagen, una vez el pipe está lleno, es decir, después de una latencia de cuatro en la imagen, los resultados de cada comando vienen uno tras otro cada flanco de reloj y sin latencia extra por estar encadenados dentro del mismo pipe. Todo esto habiendo maximizado la frecuencia máxima de trabajo.

Detalle de la segmentación de instrucciones.

El alto rendimiento y la velocidad elevada de los modernos procesadores, se debe, principalmente a la conjunción de tres técnicas:


La segmentación consiste en descomponer la ejecución de cada instrucción en varias etapas para poder empezar a procesar una instrucción diferente en cada una de ellas y trabajar con varias a la vez.

En el caso del procesador DLX podemos encontrar las siguientes etapas en una instrucción:

IF: búsqueda
ID: decodificación
EX: ejecución de unidad aritmético lógica
MEM: memoria
WB: escritura

Cada una de estas etapas de la instrucción usa en exclusiva un hardware determinado del procesador, de tal forma que la ejecución de cada una de las etapas en principio no interfiere en la ejecución del resto.

En el caso de que el procesador no pudiese ejecutar las instrucciones en etapas segmentadas, la ejecución de la siguiente instrucción sólo se podría llevar a cabo tras la finalización de la primera. En cambio en un procesador segmentado, salvo excepciones de dependencias de datos o uso de unidades funcionales, la siguiente instrucción podría iniciar su ejecución tras acabar la primera etapa de la instrucción actual.

Otro ejemplo de lo anterior, en el caso del PIC, consiste en que el procesador realice al mismo tiempo la ejecución de una instrucción y la búsqueda del código de la siguiente.

Véase también

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • Segmentación de cauce — Se ha sugerido que este artículo o sección sea fusionado con Segmentación (informática) (discusión). Una vez que hayas realizado la fusión de artículos, pide la fusión de historiales aquí …   Wikipedia Español

  • Segmentación — El término segmentación puede referirse a: la segmentación de mercado, el proceso de dividir un mercado en grupos más pequeños que tengan características semejantes; la segmentación de memoria, un esquema de gestión de memoria en un sistema… …   Wikipedia Español

  • Riesgo (informática) — Saltar a navegación, búsqueda En arquitectura de computadores, un riesgo es un problema potencial que puede ocurrir en un procesador segmentado. Típicamente los riesgos se clasifican en tres tipos: riesgos de datos, riesgos de salto o de control… …   Wikipedia Español

  • Arquitectura en pipeline (informática) — Saltar a navegación, búsqueda La arquitectura en pipeline (basada en filtros) consiste en ir transformando un flujo de datos en un proceso comprendido por varias fases secuenciales, siendo la entrada de cada una la salida de la anterior. Esta… …   Wikipedia Español

  • EPIC (informática) — Saltar a navegación, búsqueda Procesamiento de instrucciones explícitamente en paralelo (del inglés EPIC: Explicitly Parallel Instruction Computing) es un paradigma de programación que comenzó a investigarse a principios de los años 80 y se… …   Wikipedia Español

  • Salto (informática) — Saltar a navegación, búsqueda La rama o salto es un punto de un programa informático donde flujo de programa se ve alterado. Los términos de salto o rama suelen utilizarse para referirse a programas escritos en lenguaje máquina o en ensamblador;… …   Wikipedia Español

  • Reconocimiento óptico de caracteres — El Reconocimiento Óptico de Caracteres (OCR), así como el reconocimiento de texto, en general son aplicaciones dirigidas a la digitalización de textos. Identifican automáticamente símbolos o caracteres que pertenecen a un determinado alfabeto, a… …   Wikipedia Español

  • Arquitectura ARM — Este artículo o sección se encuentra desactualizado. Es posible que la información suministrada aquí haya cambiado o sea insuficiente …   Wikipedia Español

  • Minería de datos — La minería de datos (DM, Data Mining) consiste en la extracción no trivial de información que reside de manera implícita en los datos. Dicha información era previamente desconocida y podrá resultar útil para algún proceso. En otras palabras, la… …   Wikipedia Español

  • RISC — DEC Alpha AXP 21064, un microprocesador RISC En la arquitectura computacional, RISC (del inglés reduced instruction set computer) es un tipo de microprocesador con las siguientes características fundamentales: Instrucciones de tamaño fijo y… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”