Permítanme simplificar y expandir mis comentarios anteriores y conectar los puntos para aquellos que parecen necesitarlo.
¿El diseño todavía se realiza en un nivel de (sub) lógica de puerta?
El diseño se realiza en muchos niveles, el nivel sublógico siempre es diferente . Cada reducción de fabricación exige la experiencia más brillante en física, química y procesos litográficos a medida que la estructura de un transistor cambia y la geometría también cambia para compensar las compensaciones, ya que se reduce a niveles atómicos y cuesta ~ $ miles de millones cada paso binario. tamaño. ¡Para lograr una geometría de 14 nm es una tarea enorme en I + D, control y gestión de procesos y eso sigue siendo una subestimación!
Por ejemplo, las habilidades laborales requeridas para hacer esto incluyen;
- "Diseños personalizados de nivel de bloque, celda y FET, planos de planta de nivel FUB, generación de vista abstracta, extracción de RC y verificación y depuración de esquema a diseño utilizando fases de desarrollo de diseño físico que incluyen extracción parasitaria, sincronización estática, carga de alambre modelos, generación de reloj, edición personalizada de polígonos, algoritmos de colocación automática y ruta, planificación de piso, montaje de chip completo, empaque y verificación ". *
- ¿Ya no hay mucha innovación en esa área?
- INCORRECTO - Existe una innovación significativa y fuertemente financiada en Física de semiconductores, a juzgar por la Ley de Moore y el número de patentes, nunca se detendrá. Los ahorros en energía, calor y, por lo tanto, la cuadruplicación de la capacidad se pagan cada vez.
- ¿Hemos pasado a un nivel superior de abstracción?
- Nunca dejó de moverse. - Con la demanda de más núcleos, haciendo más en una instrucción como CPU ARM RISC, µC o MCU integrados más potentes, RAM inteligente con DDR4 que tiene ECC de forma predeterminada y sectores como flash con bits de prioridad para búsquedas de memoria urgentes. - La evolución de la CPU y los cambios arquitectónicos nunca se detendrán.
Déjame darte una pista. Haga una búsqueda de trabajo en Intel, AMD, TI o AD para ingenieros y vea las descripciones de los trabajos.
- ¿De dónde vienen los diseños para los miles de millones de transistores?
- Vino de agregar más bloques de hardware de 64 bits. pero ahora que hay fallas en los nanotubos, el pensamiento tiene que cambiar del enfoque de arriba hacia abajo de los bloques al enfoque de abajo hacia arriba de los nanotubos para que funcione.
- ¿Son en su mayoría autogenerados por software? con lengua firmemente plantada en la mejilla ...
En realidad, todavía están extrayendo diseños de Area51 de naves espaciales y tienen un camino por recorrer ... hasta que cumplamos con el tubo nano-nano. Un ingeniero ingresa a la biblioteca y le dice a nVidia que nos gustaría que te unas a nosotros aquí en este chip y se convierte en una parte, que entra en un macrobloque . El diseño se puede replicar como las hormigas en Toystory, pero el control explícito de todas las conexiones se debe enrutar / retirar manualmente, así como usar DRC y enrutamiento automático para la comparación. Sí, las herramientas de automatización se actualizan constantemente para eliminar la duplicación y la pérdida de tiempo.
- ¿Todavía hay mucha optimización manual?
- Teniendo en cuenta que una aerolínea ahorró suficiente dinero para pagar su salario al eliminar solo 1 aceituna de la cena en Primera Clase, Intel buscará formas de eliminar tantos átomos como sea posible dentro del marco de tiempo. Cualquier exceso de capacitancia significa un desperdicio de calor, rendimiento y más ruido, no tan rápido ...
Pero realmente las CPU crecen como Tokio, no es de la noche a la mañana, pero decenas de millones viven allí ahora con una mejora constante. No aprendí a diseñar en la Univ. pero al leer y tratar de entender cómo funcionan las cosas, pude ponerme al día en la industria bastante rápido. Tengo 10 años de experiencia en mis primeros 5 años en el sector aeroespacial, diseño de instrumentos nucleares, diseño SCADA, monitoreo de procesos, diseño de antenas, diseño y depuración de estaciones meteorológicas automatizadas, VLF Rx de PLX de OCXO, control remoto bidireccional de cohetes Black Brandt ... y ese fue solo mi primer trabajo. No tenía idea de lo que podía hacer.
No se preocupe por miles de millones de transistores ni tenga miedo de qué aprender o cuánto necesita saber. Simplemente siga su pasión y lea los diarios de comercio entre sus horas de sueño, luego no se verá tan verde en el trabajo y ya no se sentirá como un trabajo.
Recuerdo que tuve que diseñar un amplificador operacional 741 "like" como parte de un examen una vez, en 20 minutos. Nunca lo he usado realmente, pero puedo reconocer lo bueno de los grandes diseños. Pero entonces solo tenía 20 transistores.
Pero cómo diseñar una CPU debe comenzar con una especificación, a saber;
¿Por qué diseñar una CPU y hacer puntos de referencia medibles para lograr tales como;
- Instrucciones de macro por segundo (MIPS) (más importante que el reloj de la CPU), por ejemplo; - El chip Itanium de Intel se basa en lo que ellos llaman un diseño de Computación de instrucción paralela explícita (EPIC).
- Diseño de CPU patentado por Transmeta con microprocesadores de transformación de código de palabra de instrucciones muy largos (VLIWCMM). Demandaron a Intel en 2006, cerraron el taller y se conformaron con ~ $ 200 millones en 2007.
- Rendimiento por vatio (PPW), cuando los costos de energía> costo del chip (para servidores) - Punto de flotación Ops por segundo (FLOPS) para el rendimiento matemático.
Hay muchas más métricas, pero nunca bases la calidad de diseño de una CPU en su velocidad de GHz (ver mito)
Entonces, ¿qué herramientas de viaje se necesitan para diseñar las CPU? La lista no encajaría en esta página, desde el diseño físico a nivel atómico hasta el diseño físico EMC / EMC de malla dinámica hasta el ingeniero de pruebas de verificación de diseño front-end, donde las habilidades requeridas incluyen; - Simulación de RTL de front-end - conocimiento de IA y arquitectura de computadora y diseño de nivel de sistema - Verificación lógica y simulación lógica usando VHDL o Verilog. - Programación orientada a objetos y varios CPU, bus / interconexión, protocolos de coherencia.