1.- ¿En microprocesadores que significa RISC?
CISC CISC Comp Comple lexx Inst Instruc ructition onss Set Set Comp Comput uter, er, Orde Ordenad nador or con con un conj conjun unto to de instrucciones completo. RISC RISC Reduced Instructions Set Computer, Ordenador con un conjunto de instrucciones reducido 2.- ¿En microprocesadores cual es la filosofía de los RISC?
A finales de los setenta, investigaciones en IBM (y otros proyectos similares en otros lugares) demostraron que la mayoría de esos modos de direccionamiento ortogonal eran ignorados por la mayoría de los programas. Esto fue un efecto colateral en el incremento en el uso de compiladores para generar los programas, algo opuesto a escribirlos en lenguaje ensamblador . Los compiladores tendían a ser demasiado tontos en términos de las características que usaban, un efecto colateral del intento por hacerlos pequeños. El mercado se estaba moviendo hacia un uso más generalizado de los compiladores, diluyendo aún más la utilidad de los modelos ortogonales. Otro descubrimiento fue que debido a que esas operaciones eran escasamente util utiliz izad adas, as, de hecho hecho tendí tendían an a ser más más lenta lentass que que un núme número ro peque pequeño ño de operaciones haciendo lo mismo. Esta paradoja fue un efecto colateral del tiempo que se utiliz utilizaba aba diseñan diseñando do los CPU, CPU, los diseña diseñadore doress simple simplemen mente te no tenían tenían tiempo de optimizar cada instrucción posible, y en vez de esto sólo optimizaban las más utilizadas. Un famoso ejemplo de esto era la instrucción VAX INDEX, que se ejecutaba más lentamente que un ciclo que implementara el mismo código. Casi al mismo tiempo, las CPU comenzaron a correr a velocidades mayores que las de la memoria con la que se comunicaban. Aún a finales de los setenta, era aparente que esta disparidad continuaría incrementándose al menos durante la siguiente década, para entonces los CPU podrían ser cientos de veces más rápidos que la memoria. Esto significó que los avances para optimizar cualquier modo modo de dire direcc ccio iona nami mien ento to serí serían an com complet pletam amen ente te sobr sobrep epas asad ados os por por las las velocidades tan lentas en las que se llevaban a cabo. Otra parte del diseño RISC llego desde las medidas prácticas de los programas en el mundo real. Andrew Tanenbaum reunió muchos de éstos, demostrando así que la mayoría de los procesadores estaban sobredimensionados. Por ejemplo, él demo demost stró ró que que el 98 % de toda todass las las cons consta tant ntes es en un progr rogram ama a podí podían an acomodarse en 13 bits, aun cuando cada diseño de CPU dedicaba algunos múltiplos de 8 bits para almacenarlos, típicamente 8, 16 o 32, una palabra entera. Tomando este hecho en cuenta sugiere que una máquina debería permitir que las constantes fuesen almacenadas en los bits sin utilizar de otras instrucciones, disminuyendo el número de accesos a memoria. En lugar de cargar números desde la memoria o los registros, éstos podrían estar ahí mismo para el momento en el que el CPU los necesitara, y por lo tanto el proceso sería mucho más rápido. Sin embargo, esto requería que la instrucción instrucción misma fuera muy pequeña, de otra mane manera ra no exis existitirí ría a sufi sufici cien ente te espa espaci cio o libr libre e en los los 32 bits bits para para mant manten ener er constantes de un tamaño razonable.
Fue el pequeño número de modos y órdenes que dio lugar al término Conjunto de Instrucciones Reducidas. Ésta no es una definición correcta, ya que los diseños RISC cuentan con una vasta cantidad de conjuntos de instrucciones para ellos. La verdadera diferencia es la filosofía para hacer todo en registros y llamar y guardar los datos hacia ellos y en ellos mismos. Ésta es la razón por la que la forma más correcta de denominar este diseño es cargar-almacenar . Con el paso del tiempo las técnicas de diseño antiguas se dieron a conocer como Computadora con Conjunto de Instrucciones Complejo, CISC por sus siglas en inglés, aunque esto fue solamente para darles un nombre diferente por razones de comparación. Por esto la filosofía RISC fue crear instrucciones pequeñas, implicando que había pocas, de ahí el nombre conjunto de instrucciones reducido. El código fue implementado como series de esas instrucciones simples, en vez de un sola instrucción compleja que diera el mismo resultado. Esto hizo posible tener más espacio dentro de la instrucción para transportar datos, resultando esto en la necesidad de menos registros en la memoria. Al mismo tiempo la interfaz con la memoria era considerablemente simple, permitiendo ser optimizada. Sin embargo RISC también tenía sus desventajas. Debido a que una serie de instrucciones son necesarias para completar incluso las tareas más sencillas, el número total de instrucciones para la lectura de la memoria es más grande, y por lo tanto lleva más tiempo. Al mismo tiempo no estaba claro dónde habría o no una ganancia neta en el desempeño debido a esta limitación, y hubo una batalla casi continua en el mundo de la prensa y del diseño sobre los conceptos de RISC.
3.- ¿En microprocesadores cuales son las ventajas de los RISC? • • • • •
•
•
•
•
•
Incrementar el tamaño del conjunto de registros. Mayor velocidad en la ejecución de instrucciones. Implementar medidas para aumentar el paralelismo interno. Añadir cachés enormes. Añadir otras funcionalidades, como E/S y relojes para mini controladores. Construir los chips en líneas de producción antiguas que de otra manera no serían utilizables. No ampliar las funcionalidades, y por lo tanto ofrecer el chip para aplicaciones de bajo consumo de energía o de tamaño limitado. Codificación uniforme de instrucciones (ejemplo: el código de operación se encuentra siempre en la misma posición en cada instrucción, la cual es siempre una palabra), lo que permite una decodificación más rápida. Un conjunto de registros homogéneo, permitiendo que cualquier registro sea utilizado en cualquier contexto y así simplificar el diseño del compilador (aunque existen muchas formas de separar los ficheros de registro de entero y coma flotante). Modos de direccionamiento simple con modos más complejos reemplazados por secuencias de instrucciones aritméticas simples
4.- ¿En microprocesadores que significa CISC?
SISC (Simple Instruction Set Computing ) es un tipo de arquitectura de microprocesadores orientada al procesamiento de tareas en paralelo. Esto se implementa mediante el uso de la tecnología VLSI, que permite a múltiples dispositivos de bajo costo que se utilicen conjuntamente para resolver un problema particular dividido en partes disjuntas 5.- ¿En microprocesadores cual es la filosofía de los CISC?
La meta fundamental de la arquitectura de CISC es terminar una tarea adentro como pocas líneas de la asamblea como sea posible. Esto es alcanzada construyendo el hardware del procesador que es capaz de entender y de ejecutar una serie de operaciones. Para esta tarea particular, un procesador de CISC vendría preparado con una instrucción específica (la llamaremos “MULT”). Cuando está ejecutada, esta instrucción carga los dos valores en los registros separados, multiplica los operandos en la unidad de la ejecución, y después almacena el producto en el registro apropiado. Así, la tarea entera de multiplicar dos números se puede terminar con una instrucción: MULT 2:3, 5:2 MULT es qué se conoce como “instrucción compleja.” Funciona directamente en los bancos de la memoria de computadora y no requiere a programador llamar explícitamente ningún cargamento o las funciones el almacenar. Se asemeja de cerca a un comando en una lengua de alto nivel. Por ejemplo, si dejamos “a” representar el valor de 2:3 y “b” representa el valor de 5:2, después este comando es idéntica a la declaración de C “a = a * B.” Una de las ventajas primarias de este sistema es que el recopilador tiene que hacer muy poco el trabajo para traducir una declaración del idioma de alto nivel a la asamblea. Porque la longitud del código es relativamente corta, el ESPOLÓN muy pequeño se requiere para almacenar instrucciones. El énfasis se pone en instrucciones complejas del edificio directamente en el hardware. 6.- ¿En microprocesadores cuales son las ventajas de los CISC? • • • •
•
Reduce la dificultad de crear compiladores. Permite reducir el costo total del sistema. Reduce los costos de creación de software. Mejora la compactación de código. Facilita la depuración de errores.
7.- ¿En microprocesadores que significa arquitectura Hardvard?
Este tipo de arquitectura se diferencia de la arquitectura Von Neumann porque utiliza un sistema de almacenamiento separado físicamente para las instrucciones y para los datos. Las instrucciones y los datos se almacenan de manera separada
en la memoria caché. 8.- ¿En microprocesadores cual es la filosofía de la Arquitectura Harvard?
El tamaño de la unidad de datos o instrucciones está fijado por el ancho del bus que comunica la memoria con la CPU. Así un microprocesador de 8 bits con un bus de 8 bits, tendrá que manejar datos e instrucciones de una o más unidades de 8 bits (bytes) de longitud. Si tiene que acceder a una instrucción o dato de más de un byte de longitud, tendrá que realizar más de un acceso a la memoria. Y el tener un único bus hace que el microprocesador sea más lento en su respuesta, ya que no puede buscar en memoria una nueva instrucción mientras no finalicen las transferencias de datos de la instrucción anterior. 9.- ¿En microprocesadores cuales son las ventajas de la arquitectura Harvard?
La ventaja de uso de la arquitectura Harvard es cuando la frecuencia de lectura de las instrucciones y los datos es aproximadamente la misma. Esta arquitectura se usa principalmente en procesadores de señales digitales como el audio y el video. Cada memoria del micro dispone de un bus respectivo, lo que permite al CPU acceso de manera simultánea tanto a las instrucciones como a los datos. Un modelo de arquitectura Harvard sería el PIC16Fxxx con un bus de datos de 14bits para memoria de programas y un bus independiente de 8-bits para acceder a la memoria de datos. Un ejemplo de arquitectura Harvard son algunos micros Atmel AVR, sólo que éstos presentan una arquitectura modificada. También los encontramos en procesadores Texas Instruments TMS320 C55x. 10. Haga un gráfico de la arquitectura Harvard típica
11- ¿En microprocesadores que es la arquitectura Von Neumann?
La arquitectura de von Neumann es una familia de arquitecturas de computadoras que utilizan el mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos (a diferencia de la arquitectura Harvard).
12.- ¿En microprocesadores cual es la filosofía de la arquitectura Von Neumann?
La arquitectura Harvard tiene la unidad central de proceso (CPU) conectada a dos memorias (una con las instrucciones y otra con los datos) por medio de dos buses diferentes. Una de las memorias contiene solamente las instrucciones del programa (Memoria de Programa), y la otra sólo almacena datos (Memoria de Datos). Ambos buses son totalmente independientes y pueden ser de distintos anchos. Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced Instrucción Set Computer), el set de instrucciones y el bus de memoria de programa pueden diseñarse de tal manera que todas las instrucciones tengan una sola posición de memoria de programa de longitud. Además, al ser los buses independientes, la CPU puede acceder a los datos para completar la ejecución de una instrucción, y al mismo tiempo leer la siguiente instrucción a ejecutar. 13.- ¿En microprocesadores cuales son las ventajas de la arquitectura Von Neumann? •
•
•
El tamaño de las instrucciones no está relacionado con el de los datos, y por lo tanto puede ser optimizado para que cualquier instrucción ocupe una sola posición de memoria de programa, logrando así mayor velocidad y menor longitud de programa. El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidad en cada operación. Una pequeña desventaja de los procesadores con arquitectura Harvard, es que deben poseer instrucciones especiales para acceder a tablas de valores constantes que pueda ser necesario incluir en los programas, ya que estas tablas se encontraran físicamente en la memoria de programa (por ejemplo en la EPROM de un microprocesador).
14. Haga un gráfico de la arquitectura Von Neumann
15. Identifique su PC, diga a que arquitectura perteneces y que código de instrucciones tiene su microprocesador
Está basada en la arquitectura Von Neumann, en la cual la unidad central de proceso (CPU), está conectada a una memoria única donde se guardan las instrucciones del programa y los datos. La arquitectura de Intel es CISC/RISC. Las instrucciones están almacenadas en CISC pero lo que realmente ejecuta el procesador son instrucciones RISC. Uno de las primeras cosas que se hace a nivel interno es traducir todas las instrucciones cisc a risc y luego la CPU va ejecutando ya que estas son mucho más rápidas, de mayor facilidad de segmentación, etc.