Breve historia del RISC, por Alejandro Peña

Y cómo no, para hablar del RISC, también hay que hablar del CISC(1) y un poco mas allá….

A finales de los años 50’s y debido a la necesidad de racionalizar las líneas de productos de ordenadores de IBM se crea un programa de investigación para realizar una familia de ordenadores que funcionasen con el mismo software.

Esto fue debido a que la escalada de complejidad en el desarrollo de software empezaba a ser critica, se vislumbraba una crisis en el campo de la programación debido principalmente a la complejidad para hacer un programa que funcionase en la gran variedad de procesadores existentes.

El resultado de ese programa fue el system /360.

http://www-1.ibm.com/ibm/history/catalog/itemdetail_136.html

http://www-1.ibm.com/ibm/history/catalog/itemdetail_19300.html

http://www-1.ibm.com/ibm/history/catalog/itemdetail_19268.html

http://www.cs.ncl.ac.uk/old/events/anniversaries/40th/images/ibm360_672/21.jpg

http://www.cs.ncl.ac.uk/old/events/anniversaries/40th/images/ibm360_672/29.jpg

http://www.cs.ncl.ac.uk/old/events/anniversaries/40th/images/ibm360_672/slide12.jpg

http://www.cs.ncl.ac.uk/old/events/anniversaries/40th/images/ibm360_672/26.jpg

Introducido por IBM el 7 de abril del 1964, fue el primer ordenador comercial de arquitectura microprogramada. Más tarde el concepto del system / 360 se convertiría en CISC (1). El concepto era (y es) pasar la complejidad de la escritura de software al hardware y así facilitar la tarea de los programadores.

Al tener una estructura de instrucciones básicas, el programador podía trabajar con lenguajes de programación mas sencillos y mas humanos, dejando la complejidad al que diseñaba el procesador. También se conseguía que, manteniendo el conjunto de instrucciones en los modelos siguientes, se mantuviera la compatibilidad del software y así se pudiera rentabilizar la inversión del desarrollo de software.

El éxito del System/360 dio lugar a las configuraciones CISC que serían la estructura que dominaría el mercado en los 20 años siguientes y su concepto sería una parte principal del desarrollo del microprocesador.

Entonces John Cocke (al que se le atribuye la creación del primer RISC) y Joel Birnbaum entraron en escena.

http://www.research.ibm.com/resources/news/images/john_cocke_sm.jpg

http://www.hpl.hp.com/about/honors/birnbaum110.jpg

IBM en 1974 empezó a diseñar por encargo de Ericsson, una centralita de teléfonos que procesara 300 llamadas por segundo de unas 20.000 instrucciones por llamada, lo cual hacia necesario un procesador que realizara 12 millones de instrucciones por segundo, ningún procesador de la época tenía esa potencia. Pero los cálculos que se requerían no eran muy complejos, básicamente se necesitaba, añadir y mover datos y combinar campos. Cuando la centralita fue terminada 1975, no se comercializó, pero quedaba bastante claro un concepto: al simplificar las instrucciones se podía aumentar considerablemente la potencia de un procesador.

Diversos estudios reflejaron, que la mayoría del software, la mayoría del tiempo, usaba las instrucciones más simples dejando las instrucciones más complejas para casos raros, en software muy especializado. Esto abría nuevas posibilidades de desarrollo, pues el procesador no tenía por qué llevar un juego de instrucciones muy complejo, abaratando así los costes de desarrollo, diseño, producción etc…

Nace así, en octubre de 1975 en IBM, un proyecto de investigación, iniciado en el centro Watson, que daría como fruto el RISC. El primer RISC fue el procesador 801 que nunca saldría a la venta, pero un derivado suyo se utilizó como una versión «single -chip» o de solo un chip, el ROMP (Research/Office Products Microprocessor), siendo la primera producción de un sistema RISC; mas tarde, en enero de 1986, IBM sacó el primer sistema RISC, el PC RT (el cual fue un fracaso comercialmente), .

Por aquel entonces los CISC dominaban el mercado y hubieron tres factores que marcarían el inicio del mercado RISC:

1,-Berkeley, en 1980 y financiado por el departamento de defensa, crea dos máquinas, el RISC-I y el RISC II y centra su investigación en reducir al mínimo las llamadas más lentas a la memoria y en crear una arquitectura rica en registros (3) que en 1987 será adoptada por Sun Microsystems

2,-Stanford, siguiendo el ejemplo de IBM de confiar en la optimización del compilador (4) y la eficiencia del pipeline(5), crea la configuración MIPS, que es publicada en 1981 por John L. Hennessy.

3,-El cambio de empresa de Joel Birnbaum de IBM a HP y el nacimiento dentro de HP del PA- RISC (Precision Architecture RISC o RISC de arquitectura precisa).

El apoyo de Berkeley y Stanford a la investigación de RISC como arquitectura y la apuesta de HP por su comercialización, sobre todo en el mercado de servidores, crearán la confianza suficiente en el mercado para la eclosión del estándar.

Con el nacimiento del RISC, la complejidad volvía al desarrollo del software, cosa que los desarrolladores no permitirían, el nacimiento del lenguaje de programación C, dentro del UNIX, su portabilidad y la no dependencia del procesador que lo ejecutaba, aproximó los desarrolladores a los procesadores RISC, ya que el esfuerzo del programador se minimizaba y la complejidad pasaba al que desarrollaba el compilador (4).

(1 )CISC: complex instruction set computer, en castellano, ordenador con un conjunto de instrucciones complejas. La nomenclatura «CISC» fue posterior al RISC, sólo cuando el RISC apareció, surgió la necesidad de otorgarle un nombre a la arquitectura anterior.

(2) RISC: reduced instruction set computer, u ordenador de instrucciones reducidas.

(3) Registros: los registros son la memoria del procesador donde se almacenan datos para procesarlos, esto es mas rápido que hacerlo directamente sobre la memoria.

(4) Compilador: compilador es el software que convierte el lenguaje de programación, -parecido al Ingles-, al lenguaje del procesador, – a las instrucciones que lleva implementadas –

(5) Pipeline: es la técnica que permite ejecutar una instrucción y hacer la búsqueda de la siguiente en un solo ciclo de reloj, con ello se consigue que se pueda ejecutar una instrucción por ciclo de reloj, pues al terminar de ejecutar una el procesador ya sabe cual es la siguiente.

12 Comments

  1. Anónimo

    porfavor nesesito saver sobre los microprocesadores de radio grafica y electronica digital espero pronto la respuesta
    ademas me parese una pagina exelente para responder inquietudes sobre la tecnologia
    Att davian lasso

    gracias por su atension

  2. Anónimo

    Necesito conocer acerca del juego de instrucciones de la arquitectura Risc, por favor enviame una informacion sobre dicho tema ya que debo exponerlo en clase en la noche, te agradeceria mucho tu ayuda.

  3. Anónimo

    la informacion esta muy completa .. creo ke si lo vemos de una forma genreal esta bien … falto profundizar en los ejemplos de procesadores …. y si tienes info de lo pipeline .. porfa mandeme algo … gracias

  4. Anónimo

    POR FAVOR NECESITO SABER LA RELACION COSTO/BENEFICIO, COSTO/RENDIMIENTO DE EL SISTEMA RISC Y LAS VENTAJAS Y DESVENTAJAS DE ESTE SISTEMA CON EL SISTEMA CISC PIPELINE PORFA ES URGENTE PARA UNA EXPOSICION MAÑANA EN LA MAÑANA

Deja una respuesta