ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

FUNDAMENTOS DEL DISEÑO DE COMPUTADORES


Enviado por   •  24 de Septiembre de 2013  •  2.034 Palabras (9 Páginas)  •  1.304 Visitas

Página 1 de 9

1. FUNDAMENTOS DEL DISEÑO DE COMPUTADORES

Introducción

En 1945, no había computadoras de programa almacenado. Hoy, con unos pocos miles de dólares se puede comprar un computador personal con más presentaciones, más memoria principal y más memoria de disco que un computador que, en 1965, constaba un millón de dólares.

El progreso en la obtención de mejores arquitecturas ha sido mucho menos consistente, los veinte últimos años, los diseñadores de computadoras han dependido enormemente de la tecnología de circuitos integrados. El crecimiento varía del 18 al 35 por 100 por año. Los supercomputadores han crecido gracias a las mejores tecnologías y arquitectónicas.

El crecimiento ha sido el más rápido, aprovechando las ventajas que ofrece la tecnología de circuitos integrados. A partir de 1980 ha habido dos cambios significativos en el mercado, el primero es la eliminación virtual de la programación ensamblador y el segundo es la creación de sistemas operativos estandarizados.

Los diseñadores pudieron crear una serie de máquinas que mejoraban el rendimiento, en un factor de casi 2, cada año.

Definiciones de Rendimiento

Normalmente, los términos “tiempo de respuesta”, “tiempo de ejecución” y “productividad” se utilizan cuando se está desarrollando una tarea de cálculo completa. Los términos “latencia y “ancho de banda” casi siempre se eligen cuando se habla de un sistema de memoria.

El tiempo de respuesta depende de una serie de factores no determinísticos, como lo que el disco este haciendo en el instante de la petición de E/S y del número de tareas que están esperando acceder al disco. El número de datos que realmente va o viene del disco por unidad de tiempo no es un valor constante.

Una de las iteraciones más importantes segmentación (pipelining). La segmentación es una técnica que mejora la productividad al soplar la ejecución de múltiples instrucciones.

Principios cuantitativos del diseño de computadores

Acelerar el caso común

Se aplica cuando se determina como emplear recursos, ya que el impacto de hacer alguna ocurrencia más rápida es mucho mayor si la ocurrencia es frecuente. Mejorar el evento frecuente en lugar del evento raro evidentemente, también ayudara a aumentar el rendimiento.

Ley de Amdahl

La ley de Amdahl establece que la mejora obtenida en el rendimiento al utilizar algún modo de ejecución más rápido está limitada por la fracción de tiempo que se pueda utilizar es el modo más rápido; define la garantía de rendimiento o aceleración (speedup).

La aceleración indica la rapidez con que se realizara una tarea utilizando una maquina con la mejora con respecto a la maquina original.

Si una mejora es solo utilizable por una fracción de una tarea, no podemos aumentar la velocidad de la tarea más que el reciproco del uno menos esa fracción.

Localidad de referencia

La propiedad más importante, que regularmente explotamos de un programa, es la localidad de referencia: los programas tienden a reutilizar los datos e instrucciones que ha utilizado recientemente.

La localidad d de referencia se aplica a los accesos a los datos, aunque no tan fuertemente como a los accesos al código. Se han observado dos tipos diferentes de localidad. La localidad temporal especifica que los elementos accedidos recientemente, probablemente, serán accedidos en un futuro próximo. La localidad espacial establece que los elementos cuyas direcciones son próximas tienden hacer referenciados juntos con el tiempo.

El trabajo de un diseñador de computadores

Un arquitecto de computadores diseña máquinas para ejecutar programas. La tarea de diseñar un computador presenta muchos aspectos, entre los que incluyen el diseño del repertorio de instrucciones, la organización funcional, el diseño lógico y la implementación. La implementación puede abarcar el diseño de circuitos integrados (IC) encapsulamiento, potencia y disipación térmica.

Termino arquitectura a nivel lenguaje maquina se refiere al repertorio de instrucciones concreto, visibles por el programador. Sirve como frontera entre software y hardware. La implementación de una maquina tiene dos componentes: organización y hardware.

Requerimientos funcionales

Los arquitectos de computadores deben diseñar un computador que cumpla ciertos requerimientos funcionales con determinadas ligaduras de precio y rendimiento; con frecuencia también tienen que determinar los requerimientos funcionales y, en este caso, puede ser una tarea de gran magnitud. Los requerimientos pueden ser características específicas, inspiradas por el mercado.

La mayoría de los atributos de un computador –soporte hardware para diferentes tipos de datos, rendimiento de diferentes funciones, etc.- pueden ser evaluados envase al coste/rendimiento para el mercado pensado.

Equilibrar software y hardware

Que el diseño elegido sea óptimo, depende, por supuesto, de la métrica elegida: las métricas más comunes involucran coste y rendimiento. Otros requerimientos medibles pueden ser importantes en algunos mercados; la fiabilidad y tolerancia a fallos son, con frecuencia, cruciales en los entornos de tratamiento de transacciones.

Las implementaciones hardware y software de una determinada característica tienen diferentes ventajas. Las ventajas principales de una implementación software son el bajo coste de los errores, más fácil diseño, y actualización más simple. El hardware ofrece el rendimiento como una única ventaja, aunque las implementaciones hardware no son siempre más rápidas. El equilibrio entre hardware y software nos llevara a la mejor máquina para las aplicaciones de interés.

A veces, un requerimiento específico puede necesitar, efectivamente la inclusión de soporte hardware.

Otras máquinas han soportado estas funciones utilizando una combinación de software y operaciones sobre enteros y lógicas (estándares). Al elegir entre dos diseños, un factor que un arquitecto debe considerar es el de su complejidad. Los diseños complejos necesitan más tiempo de realización, prolongado el tiempo de aparición en el mercado.

Por eso, los diseñadores pueden tratar de desplazar la funcionalidad del hardware al software. Por otra parte, los diseños en la arquitectura de a nivel lenguaje máquina y en la organización pueden afectar a la complejidad de la implementación así como a la complejidad de los compiladores y sistemas operativos de la máquina. El arquitecto siempre debe ser consciente del impacto que el diseño que elija tendrá sobre el tiempo de diseño del hardware y del software.

Diseñar para

...

Descargar como (para miembros actualizados) txt (14 Kb)
Leer 8 páginas más »
Disponible sólo en Clubensayos.com