Las fronteras de la informático Arquitecturas de los microprocesadores de 32 bits La irrupción en el mercado de componentes electrónicos aún limitada de productos adicionales como coprocesadores de punto flotante, MIVIUs, consoladores de bus, de ES,... es un fenómeno que promete ser trascendental por su incidencia en los precios de los sistemas comúnmente denominados superminis con el VAX 11780 como modelo de referencia, quizás por sus aproximadamente 1 MIPS, frente a los 3 ó 4 MIPS de un 80386. Estos Supermicros reforzados, integrados y abaratados pueden ser los futuros equivalentes de los actuales ordenadores personales. Escribe sobre el tema DARÍO MARAVALL. por el programador en lenguaje ensamblador. En el extremo opuesto se a la estructura o implementación funcionalidad del sistema. Una postura polémica, que es necesario, antes que nada, delimitar los diferentes niveles del aspecto funcional de un sistema de computador, donde se representan los diferentes niveles de un sistema de computador. En relación a esta figura, una función manejo de ficheros en memoria secundaria, una larga cadena que incluye otras virtual MV y operaciones de entrada salida ES, principalmente. Nadie habla del maneo de ficheros como una componente de la arquitectura, aunque sí de 3a memoria virtual y de la organización ES. La explicación esta en el hecho de que el junto de programas. Por supuesto que estos programas instrucciones y datos, es k independiente de la forma específica de organización correspondiente de arquitectura Arquitectura de un de cualquier otro computador es decir, arquitectura. 7 2BIT Las máquinas RISC han surgido como una respuesta natural a les sistemas distribuidos y paralelos. Asi, para fijar ideas, un minicomputador convencional digamos un VAX 11780, trabajando con un sistema operativo estándard y provisto de un dialecto del lenguaje LISP no incluiría en su arquitectura las primitivas de este lenguaje abs, end, append, apply Sin LISP, cuya organización interna está especialmente diseñada para la implementación directa de tales primitivas, que pueden considerarse como parte del repertorio de instrucciones del procesador central o CPU. Bajo esta perspectiva los microprocesadores, incluidos los más avanzados de 32 bits, son estrictamente hablando instrucciones por tanto constituyen de un sistema de ordenador pero solo una parte. En este sentido, para poner un ejemplo, la arquitectura del miniordenador de 16 bits PDP1I mejor sería hablar de una familia dispone de varias versiones de la CPU integrados en un chip la más potente, el Micro Jl 1, incluye en el chip la gestión de memoria virtual. Análogamente, la arquitectura del VAX 11780 también dispone de un microprocesador éste ya de 32 bits, el Micro VAX II, que implementa en microcódigo el 80 por ciento del repertorio de instrucciones de la CPU materna el software mediante una tabla. Se podrían poner muchos más ejemplos pare No obstante, a dores o CPUs altamente integradas configuran de manera completa el resto de la arquitectura gestión de la MV cuando no está integrada directamente en el micro, procesamiento aritmético en punto flotante, ES de forma que se puede utilizar correctamente el término de arquitectura de un microprocesador. Esto es particularmente cierto en el caso de los microprocesadores que han surgido sean de 8, 16 ó 32 bits como elementos originarios y centrales de una arquitectura de computador, a diferencia de los Micro PDP11, Micro VAX II, Micro IBM370, Micro Eclipse grada de CPUs de arquitecturas ya existen, lo ispect la arquitectura de los microprocesadores son los típicos de una arquitectura Repertorio de instrucciones. Modos de direccionamiento. Estructura interna de la CPU aspecto de implementación. Soporte material de la memoria virtual. Unidades especializadas de miento, incluyendo los denominad procesadores. Unidades. Organización de la entrada salida. Organización de la jerarquía de me Dependiendo de la implementación, estos elementos se integran en uno o varios propiamente dicho y su correspondiente familia de componentes procesa do res, unidad de gestión de memoria virtual controladores de ES as de Asi, la repertorio de instrucciones, parte fundamental de la funcionalidad de radicalmente la organización interna del sistema registros de la CPU, buses internos, organización de la ES De hecho, como señalábamos al comienzo del articulo, la importancia individual y las implicaciones mutuas de la funcionalidad y constituyen temas polémicos, con de la problemática de la de las arquitectura sea la que enfrenta a los defensores de las CPUs RISC Reduced Instructíon Set Computer frente a las CPUs convencionales o CISC la primera C por Complex. Principios de la gestión de memoria virtual secundaria MS, a veces se confunde la MV con la MS. cuando es exclusivamente microprocesador. en el contexto del La explicación de la es la siguiente la MMU en una dirección física. dependiendo de la. relación generada BUS DIRECCIONES .BUS DATOS Fig. Esquema de bloques representando las direcciones físicas y de la capacidad de MV segmentada y paginada ya sea directamente en CPU o con un chip adicion.nl. Aunque la mayoría de MMU. longitud 24 del bus de Mbytes dt MV a una longitud de 33 bit, El disponer de la de una MV de traducción di recia DVDF. mientras que la. Hemos llamado a aquellas, porque independientes de la CPU, por lo técnica mis habitual, que consisten colocar una pequeña memoria de alta velocidad de acceso denominado memoria en bloques en MC son una de N bloques de la bloques en es precisamente de y carpa MPMO. El tamaño duplicadas en MCI, pero al mismo dirección física entregada por pueden ser asociativa pura cualquier bloque de MP puede colocarse en cualquier bloque de la MCI. intermedia los de MP disponen una asignación dentro de un conjunto de bloques de la MC v. por último, directa, en la que los bloques de una asignación rígida en la MC. imaginar pero su adicional de los di os bloques en MC Decimos posible capacidad de poder ap1 CORRESPONDENCIA, Fig. II Correspondencia entre bloques fe memoria principal y MC. aún como es una problemática de la arquitectura lW un computador, es en medida CPU. por no pueden para a ordenador usuarios en pueden verse coma segmentos en el espacio de adicionales antes del acceso final o Para evitar los accesos adicionales creados por la paginación, una Por tratarse de una arquitectura.12 bits bien conocida y disponible VAX 11780. En la figura 11,2 se aprecia que la TLB posen una menos significativos de la virtual como seleccionador de uno de los 12 direcciones físicas por oía la. técnica de aceleración. Para un sistema de memoria con segmentación y paginación, cada referencia a dirección su correspondiente dirección que de los años 70 ha estado influido por el estado de ánimo creado por la crisis del software, de diseño de arquitecturas con repertorios de instrucciones cada vez más amplios y complejos es decir, una emigración del software hacia el hardware. En esos años 70 la implementación del en una memoria más pequeña y más rápida que La memoria principal de las instrucciones del repertorio . Merced a la los diseñadores de una arquitectura podían complicar, sin problemas importantes de coste y de tiempos de ejecución, el SISTEMA OPERATIVO SISTEMA en manos de los programadores en ensamblador y de los compiladores una herramienta más versátil y potente, sino que además se disminuían los tiempos de ejecución de los programas reescritos en un repertorio más amplio, al disminuirse el espacio de ocupación de los programas aunque, como es sabido, no tamaño de un programa y tiempo de ejecución, ya que influye la velocidad de ejecución de las respectivas instrucciones. Con la generalización del uso de las no se espera esté almacenada la información requerida por la CPU en cada momento, la hipótesis de que la velocidad de rías veces superior a la de una instrucción comienza a tambalearse. Con tiempos de acceso en realidad, con tecnologías comunes equivalentes a las memorias de control, las memorias cache consiguen que los ciclos de las microinstrucciones y de las instrucciones sean equivalentes al menos, en el margen del hit ratio de una cache, que puede ser superior al 90 por ciento de las lecturas. CISC y que muestran. de instrucciones con muy poca las más complejas del repertorio y las que, por tanto, ocupan una parte considerable de la memoria de control. 3fia básica de diseño de CPUs RISC consiste en la utilización de un repertorio y de modos de direccionamiento simples y reducidos. Como señala uno de los defensores del diseño RISC, Patterson, parodiando la tesis de Tunng cualquier cosa que pueda hacerse en microcódigo puede hacerse en el lenguaje ensamblador de un computador simple. La filosofía del diseño RISC tiene, fundamentalmente, unas grandes ventajas en el aspecto de mejorar la velocidad de ejecute de un programa reescrito en el repertorio RISC, ya que a permite una las instrucciones y b facilita la aplicación de técnicas de solape pipelining y prebúsqueda de instrucciones. de sin lo que gran parte de su atractivo pos de ejecución se Otro punto de apoyo de los En puridad, debería hablarse de una emigra parte, es más simple de depurar y no efectos perniciosos en ordenador. 76BIT RISC de a evitar al miento, por lo que se basan en el manejo de un gran número de registros una de las CPUs RISC tiene más de 500, todo ello con el objetivo de mantener la mayor parte del repertorio dentro de un ciclo de reloj en el orden délos lO MHz, por son máquinas próximas a los 10 MIPS o millones de la salvedad de que son instrucciones muchas de ellas sencillas en otras Como resulta evidente, las arquitecturas RISC, con su inversión de la RISC han RISC obligan a diseñar compiladores mucho más sofisticados y lentos que los basados en máquinas CISC. Los detractores de las máquinas RISC insisten en que esta simplificación del hardware y la consiguiente complejidad adicional del software es su principal desventaja. No obstante, conviene matizar que a la máquina no por el lenguaje de programación no redunda en la complejidad de los programas y b precisamente son las máquinas complejas, con instrucciones sofisticadas las que tienden a crear un código ejecutable más susceptible a la aparición de RISC se desprende de la generación de programas con mayor ocupación de CISC en el caso de trabajaren un entorno de memoria virtual con paginación ya que su ejecución se ve sensiblemente degradada. No obstante, las máquinas RISC han diseño y dos y paralelos temas procesadores numéricos Las fronteras de la informática a de los de enlaces serie full dúplex de alta velocidad 10 Mbits por segundo que le permite pudiéndose formar complejas estructuras del tipo RÍSC, con sus instrucciones básicas cableadas, está diseñado para compilar óptimamente un lenguaje de alto nivel, , orientado a la programación de los microprocesadores de 32 bits 500 dólares, el Transputer constituye la nuestro entender, un magnífico componente disponible para investigar, con medios limitados, la potencialidad del una aplicación basada en 100 transputers orientada a la generación en tiempo real de imágenes de alta resolución. Otros mícroprocesadores de 32 bits inspirados en la filosofía RISC son el Clipper de la casa Faírchild ya disponible y los productos actualmente en desarrollo avanzado de Mips y Accorn. El Clipper tiene un repertorio de 101 en hardware, sin memoria de control la mayor parte de ellas se ejecuta en un ciclo básico de 30 ns. Existen otras 67 instrucciones adicionales más complejas, ROM de 2KBytes. El fabricante afirma que se consigue una velocidad media de procesamiento de 5MIPS que es cinco veces el rendimiento de un VAX 11780 y la mitad de un Transputer, aunque en este caso hay que tener en cuenta la punto flotante. Del Transputer se implementan en software, ocupando una operación de multiplicación o división en formato de 64 bits la friolera de unos 500 ciclos de CPU, que para una versión de 50 daría un tiempo de 25 ms ó 0.04 MFLOPS. Evidentemente al Transputer le hace falta un El tiempo dirá si la filosofía RISC se de 32 bits. Lo que sí es cierto es el interés de los fabricantes, particularmente des hacía las máquinas RISC, como lo demuestran los diferentes proyectos algunos ya personal IBM RT de arquitecturas RISC. Con el objetivo de fijar algunas ideas mínimas en relación a las arquitecturas de micros de 32 bits, aún siendo conscientes de las dificultades y limitaciones del empeño, algunos de los principales rasgos del 803 86, un microprocesador de 32 bits ya 7 8BIT EL MICROPROCESADOR 80386 El año 1971 puede considerarse como el comienzo, al menos en su vertiente comercial, de los microprocesadores con la aparición en el mercado de los componentes electrónicos del Intel 4004. Este circuito integrado, definido en su día como un ordenador microprogramable metido en un chip, contenia 2.300 transistores y consistía en una CPU orientada al procesamiento de datos de 4 bits. La firma Intel, por tanto, puede. ha mantenido a lo largo de los años y de las e8080 y de 16 bítsel 8O88y el 8086. Eneptoquee808£ is e> dominan el mercado de los microprocesadores de 16 bits, en parte merced al hecho de que IBM lo ha elegido como CPU de su linea de ordenadores personales y en consecuencia, toda la masa de compatibles han En cuanto a una arquitectura de 32 bits, el primer intento de Intel fue la familia i APX432, compuesta por tres microprocesador de 32 bits de a la propiedad e Este Tipos de, varias dades, que incluyen hasta 32 bits y reales bits. En este último caso se necesita el coprocesador 80287 para la implementa Repertorio de instrucciones 38Ó se ha diseñado bajo la una total compatibilidad con el ou86 y sus prolongaciones el 80186 que añade al 8086 un subconjunto de instrucciones de ES, un reloj, un controlador programable de interrupciones y un doble canal para acceso directo a memoria y el 80286 una ampliación del 80186 orientada a La de memoria virtual. Su repertorio de instrucciones, por tanto, es prácticamente el mismo que el del 80286, excepto extensiones debidas a la ampliación en los tipos de datos. Modos de dirección a miento Los modos de d i efectivo del 80386 son los mismos que en las arquitecturas CISC estándard. Es decir, directo e mediato, absoluto y variag El 80386 posee 8 registros de 32 bits de manejables por programa, aparte de un registro de indicadores o flags, también de 32 bits. Cada uno de estos registros incluye en sus 16 bits menos significativos los correspondientes registros del 8086. Existen 6 registros de 16 bits para el manejo de segmentos de 64 KBytes. El mentó de código o instrucciones, el SS el stack o pila de datos y los DS, ES, FS y GS díreccionan sendos segmentos de datos. Estos 6 registros de segmentos Cuando la CPU trabaja con direcciones con el código o programa, la pila y Organización de ES Este microprocesador soporta los métodos habituales de programación de ES software como hardware. Dispone de 64 KBytes para trabajar con ES También soporta, como es lógico, la programación de ES mediante las técnicas de DMA, o modo canal, según la termino C0IP y Organización del bus exterior El 80386 tiene buses independientes de con un ancho de 32 bits. Por razones de compatibilidad, se pueden manejar datos de 8,16 y 32 bits en cada ciclo de bus. La unidad de conexión del bus, integrada en el dores de ES Para aumentar el ancho de banda del bus existe un modo de funcionamiento de Continúa en pdg. 80 La importancia de un bus la. el Este bus de 32 bits anunciado en 1983 y con i versión disponible desde 19 está por el rebus y Nubus actualmente sólo existe un bus de .12 bits plenamente estandarizado por el IEEE el Fasl el diseño de es Lebus a soportar La separación del Mullibus II en varios buses independientes conlleva ventajas muy importantes y evidentes el ancho de banda ideal del bus se mantiene sin dificultad y en el Multíbus II es de 40 MbyEess, trabajando con un reloj de WH7 cada una de las funciones independientes del bus 40 que cuchamos. en aras de la flexibilidad uso. reproducción de los apareciesen los primera con Obus y sigue siendo Fig. 2. Esquema de bloques de la arquitectura del 80386 su importancia estratégica en la de un sistema completo tic, especialmente desde un de diseño y estandarización de de 32 bits el Multibus II véase el recuadro. La gestión de memoria virtual M VI del 80386 se basi en la y paginan. se pueden 4. Mer a scsm a y p La tabla de descriptores de de directorios de páginas están en software, es cu moría principal o secundaria, si no activas. No obstante, para acelerar referencias a memoria, la CPU los descriptores del segmento programa, de la pila de datos y de ha cuatro segmentos de datos, en sendos registros internos. Análogamente, en la unidad de paginación de la CPU existe un logia habitual con 32 traducciones de di El 80386, además de esta potente gestión de MV típica de arquitecturas de 32 bits, incluye una característica adicional pensada para soportar sistemas operativos propios de este segmento de CPUs. cual es la conmutación de tareas. A tal fin, contenido de los registros de propósito genera, contador de programas, registros y descriptores de segmento. todo Detalles de la implementación E esquema de bloqueo de la arquitectura del 803S6 se muestra en la figura 2. el máximo paralelismo dentro del de instrucciones. En un procesador como el 80386 la de programas a MP les en direcciones físicas, ya que se precisan 3 accesos a MP por cada dirección virtual, que con los tiempos actuales de acceso a una memoria RAM de coste medio constituye una clara ralentización de la CPU. Para reducir este efecto se conversión dirección física un TLB o look a side buffer con 32 elementos de conversión. Para una referencia presente un ciclo de reloj. Esta conversión sólo afecta a la paginación, no a la segmentación. Otro incremento de la velocidad se consigue con el solape de las fases independientes de búsqueda y ejecución de instrucciones, existiendo una cola de instrucciones a tal fin. Para aumentar la velocidad de la etapa de búsqueda de una instrucción, de la s que Memoria sin nación técnicas aceleración, e a media de 4 ciclos de reloj por 4 MIPS. REFERENCIAS BIBLIOGRÁFICAS los fronteros de lo Informática Clipper, de Fairch das genéricas de Digital. Por tratarse de una versión casi completa de la CPU del VAX bibliografía amplia disponible. Quizás la referencia más didáctica sen e libro H.M . R.H Eckhouse, Jrx Computer Protrümmmp and Architfacture. The VAX 11. Digital Press. 1980. dad se trata de una familia de CPUs ascendemos, siendo la última versión el NS 32332 Existe un manual de referencia del fabricante asi romo de su MMU. la NS Trasputer de Tnmos. Su fabricante ha editado CPU y del lenguaje de alto nivel. WE32IO0. tradición en la linea apareció un artículo los rasgos generales de su arquitectura AM Packard, Hila RESUMEN DE LA SITUACIÓN ACTUAL DE LOS MICROS DE 32 BITS los ES un fenómeno que por incidencia en la gama con el VAX 11 780 como el modelo de MIPS. Estas CPUs de 32 bits las cuatro o vía en precios, frente a los 20 dólares de una típica de 16 bits, pero estos precios van a caer en cuanto se lancen al ruedo la docena larga de los otros micros de 32 bits en desarrollo y, por otra parte, aumente la demanda de estos componentes. Darío Maravall Gómez Allende, es Ingeniero de y Profesor Titular de Universidad. Ha publicado más de 50 técnicos y profesionales en revistas y congresos nacionales e interna Actualmente codirige un proyecto interdisciplinario financiado por la Fundación Áreces en de lo industrial avanzada percepción visual en robots Sus áreas de trabajo y experiencia son teoría y práctica de la ingeniería de control, máquinas inteligentes y lenguajes v sistemas informáticos