Principios de diseño

1. DISEÑANDO CON LA LEY DE MOORE EN  MENTE

La única constante para los diseñadores de computadoras es el cambio rápido, que es impulsado principalmente por la Ley de Moore. Indica que los recursos de circuitos integrados duplican cada 18-24 meses. La Ley de Moore resultó de una predicción de 1965 de tal crecimiento en la capacidad de IC hecha por Gordon Moore, uno de los fundadores de Intel. Debido a que los diseños de computadora pueden tomar años, los recursos disponibles por chip pueden duplicarse o cuadruplicarse fácilmente entre el inicio y el final del proyecto. Al igual que un tirador skeet, los arquitectos de computadoras deben anticipar dónde estará la tecnología cuando el diseño finalice en lugar de diseño para donde comienza. Utilizamos un gráfico de la Ley de Moore "arriba y hacia la derecha" para representar el diseño para un cambio rápido.

2. USE LA ABSTRACCION PARA SIMPLIFICAR EL DISEÑO

Tanto los arquitectos como los programadores de computadoras tuvieron que inventar técnicas para hacerse más productivos, ya que de otra manera el tiempo de diseño se prolongaría tan drásticamente como los recursos crecieron según la Ley de Moore. Una técnica importante de productividad para hardware y software es utilizar abstracciones para representar el diseño en diferentes niveles de representación; Los detalles de nivel inferior están ocultos para ofrecer un modelo más sencillo en niveles más altos. Usaremos el icono de la pintura abstracta para representar esta segunda gran idea.

3. HAGAMOS EL CASO COMUN RAPIDO

Haciendo el caso común rápido tenderá a mejorar el rendimiento mejor que optimizar el caso raro. Irónicamente, el caso común es a menudo más simple que el caso raro y por lo tanto es más fácil de mejorar. Este consejo de sentido común implica que usted sabe lo que es el caso común, que sólo es posible con una cuidadosa experimentación y medición. Utilizamos un coche deportivo como el icono para hacer el caso común rápido, ya que el viaje más común tiene uno o dos pasajeros, y es sin duda más fácil hacer un coche deportivo rápido que una minivan rápida.

4. DESEMPEÑO VIA PARALELISMO

Desde los albores de la computación, los arquitectos de computadoras han ofrecido diseños que obtienen más rendimiento realizando operaciones en paralelo. Utilizamos motores de aviones múltiples de un avión como nuestro icono para el rendimiento paralelo.


5. DESEMPEÑO VIA PIPELINING (SEGMENTACION)

Un patrón particular de paralelismo es tan frecuente en la arquitectura de la computadora que merece su propio nombre: pipelining. Por ejemplo, antes de los bomberos, una "brigada de cubos" respondería a un incendio, que muchas películas de vaqueros muestran en respuesta a un acto cobarde por el villano. Los pobladores forman una cadena humana para llevar una fuente de agua al fuego, ya que podrían mover más rápidamente los cubos en la cadena en lugar de individuos que corren hacia adelante y hacia atrás. Nuestro icono de tubería es una secuencia de tuberías, con cada sección que representa una etapa de la tubería.

6. DESEMPEÑO VIA PREDICCION 

Siguiendo el dicho que puede ser mejor pedir perdón que pedir permiso, la siguiente gran idea es la predicción. En algunos casos, puede ser más rápido en promedio para adivinar y empezar a trabajar en lugar de esperar hasta que sepa con seguridad, asumiendo que el mecanismo para recuperarse de una mala predicción no es demasiado caro y su predicción es relativamente precisa. Utilizamos la bola de cristal de la adivina como nuestro icono de predicción.



7. JERARQUIA DE MEMORIAS

Los programadores quieren que la memoria sea rápida, grande y barata, ya que la velocidad de la memoria a menudo configura el rendimiento, la capacidad limita el tamaño de los problemas que pueden resolverse y el costo de la memoria es a menudo la mayor parte del costo de la computadora. Los arquitectos han encontrado que pueden resolver estas demandas conflictivas con una jerarquía de recuerdos, con la memoria más rápida, más pequeña y más cara por bit en la parte superior de la jerarquía y la más lenta, más grande y más barata por bit en la parte inferior. Las cachés dan al programador la ilusión de que la memoria principal es casi tan rápida como la parte superior de la jerarquía y casi tan grande y barata como la parte inferior de la jerarquía. Utilizamos un icono de triángulo en capas para representar la jerarquía de la memoria. La forma indica velocidad, costo y tamaño: cuanto más cerca de la parte superior, más rápido y más caro por bit la memoria; Cuanto más ancha sea la base de la capa, mayor será la memoria.

8. DEPENDENCIA VIA REDUNDANCIA 

Las computadoras no sólo necesitan ser rápidas; Necesitan ser confiables. Dado que cualquier dispositivo físico puede fallar, hacemos que los sistemas sean fiables al incluir componentes redundantes que pueden hacerse cargo cuando ocurre un fallo y para ayudar a detectar fallos. Utilizamos el tractor-remolque como nuestro icono, ya que los neumáticos dobles en cada lado de sus ejes traseros permiten que el camión continúe conduciendo incluso cuando un neumático falla. (Es de suponer que el conductor del camión se dirige inmediatamente a una instalación de reparación para que el neumático fluido pueda ser fijo, restaurando así la redundancia).

Comentarios

Entradas populares