Respuesta corta:
Obtener un título de posgrado / avanzado (MS / Ph.D.) En ingeniería eléctrica (EE), ingeniería informática (CE) y / o ciencias de la computación (CS), incluyendo EECS (EE + CS) o ECE (EE + CE) , que ofrece una lista de clases de automatización de diseño electrónico (EDA) o CAD VLSI (si lo desea). Las clases comunes de EDA incluyen: diseño físico, pruebas de VLSI, simulación de circuitos y síntesis y verificación lógica. Vea la respuesta del usuario de Quora a ¿Cuáles son los mejores grupos de investigación VLSI CAD en universidades de los Estados Unidos? y Elegir un programa de posgrado en diseño VLSI y áreas relacionadas: Cosas a considerar por Pasquale Ferrara en Ingeniería Eléctrica + Ciencias de la Computación (EECS).
Respuesta no tan corta:
Cumplir los requisitos previos:
- Aprenda a desarrollar un buen software usando C ++. Esto va más allá de la programación en C ++ en un sistema operativo (SO) similar a UNIX. Implica la automatización de compilación, pruebas de regresión automatizadas, control de revisiones, diseño de arquitectura de software (incluye patrones de diseño), diseño y análisis de algoritmos y programación paralela / concurrente. Practique lo que aprendió desarrollando software C ++.
- Diseño de lógica maestra (o, electrónica digital o diseño de circuito digital). Practica lo que aprendes diseñando algunos circuitos lógicos.
- Obtenga información sobre el diseño de circuitos integrados digitales (IC), o el diseño de circuitos y sistemas integrados a gran escala (VLSI), incluido el diseño RTL, el diseño de circuitos a nivel de transistor y el diseño físico manual (diseño VLSI). Aprenda sobre el flujo de diseño VLSI, al menos desde RTL hasta diseño físico. Alternativamente, aprenda sobre el diseño de circuitos integrados analógicos / radio frecuencia y señal mixta (AMS / RF). Le animo a que aprenda el diseño digital + AMS / RF IC, si desea explorar la gama completa de temas de EDA. Practica lo que aprendiste diseñando algunos circuitos integrados.
- Domina las matemáticas de ingeniería, incluidos el cálculo vectorial, las ecuaciones diferenciales y el álgebra lineal. Además, aprenda sobre lógica matemática, teoría de grafos, estadística y modelación estocástica. Si es posible, aprenda sobre las técnicas de optimización matemática. Si es posible, practique lo que aprendió aprendiendo algunos métodos numéricos para resolver algunos problemas matemáticos “simples” para los temas antes mencionados e implementándolos en C ++.
¿Por qué necesito cumplir los requisitos previos? Si no sabe cómo desarrollar software, tendrá dificultades para desarrollar el software VLSI CAD (o automatización de diseño electrónico, EDA). El desarrollo de software EDA es muy desafiante e interdisciplinario. No es para todos. Del mismo modo, debe saber cómo diseñar circuitos integrados para tener una idea de lo que puede hacer en EDA y a qué debe prestar atención al desarrollar herramientas de EDA.
Rutas para aprender sobre EDA:
- ¿Qué ubicación es mejor como EE: en una empresa de TI o de fabricación de neumáticos?
- ¿Por qué se atraen dos cables con corriente que fluye en la misma dirección y se repelen dos cables con corriente que fluye en dirección opuesta?
- ¿Cómo se puede medir la energía eléctrica?
- ¿Cuántas piezas debes usar para hacer un motor eléctrico simple?
- ¿Cuál es la diferencia entre un multímetro Fluke 115 y un multímetro Fluke 117?
- Aprenda EDA formalmente tomando clases de EDA de nivel de posgrado en buenos programas de posgrado de EECS. Las clases de EDA se pueden ofrecer a estudiantes universitarios, pero tienden a tener menos proyectos de clase (léase: proyectos de software de EDA) o no son tan desafiantes en comparación con las clases de EDA de posgrado. Nuevamente, vea la respuesta del usuario de Quora a ¿Cuáles son los mejores grupos de investigación VLSI CAD en universidades de los Estados Unidos? y Elegir un programa de posgrado en diseño VLSI y áreas relacionadas: Cosas a considerar por Pasquale Ferrara en Ingeniería Eléctrica + Ciencias de la Computación (EECS).
- Tome un curso abierto masivo en línea (MOOC).
- Coursera ofrece “VLSI CAD: Logic to Layout”, que le presenta varios temas comunes en EDA para el dominio de IC digital, como la síntesis lógica, la verificación lógica, el análisis de temporización estática y el diseño físico (colocación + enrutamiento). Su “Fondo recomendado” cubre lo que mencioné como requisitos previos.
- Udacity ofrece una clase sobre “Verificación de hardware funcional”, que cubre la verificación funcional / lógica de circuitos integrados digitales o circuitos y sistemas VLSI.
- Elija un buen libro de texto en EDA y avance a través de él. Consulte la respuesta del usuario de Quora a ¿Cuáles son algunos buenos libros sobre EDA (Electronic Design Automation)?
- Algunos libros de texto clásicos en EDA se dan de la siguiente manera.
- SH Gerez. Algoritmos para la automatización de diseño VLSI. John Wiley & Sons, Chichester, West Sussex, Inglaterra, Reino Unido, 1999.
- L.-T. Wang, Y.-W. Chang y K.-TT Cheng. Automatización electrónica de diseño: síntesis, verificación y prueba. La serie Morgan Kaufmann en sistemas de silicio. Morgan Kaufmann, Burlington, MA, 2009.
- D. Jansen. El manual de automatización de diseño electrónico. Editores Académicos Kluwer, Boston, MA, 2003.
- También puede usar los siguientes libros de EDA para el área de investigación de “diseño físico”.
- CJ Alpert, DP Mehta y SS Sapatnekar. Manual de algoritmos para la automatización del diseño físico. CRC Press, Boca Ratón, FL, 2009.
- AB Kahng, J. Lienig, IL Markov y J. Hu. Diseño físico VLSI: desde la partición de gráficos hasta el cierre de temporización. Springer Science + Business Media, BV, Nueva York, NY, 2011.
- SM Sait y H. Youssef. Automatización del diseño físico VLSI: teoría y práctica, volumen 6 de la serie de notas de conferencias sobre computación. World Scientific Publishing, Singapur, 1999.
- M. Sarrafzadeh y CK Wong. Una introducción al diseño físico de VLSI. Serie McGraw-Hill en Informática. McGraw-Hill, Nueva York, NY, 1996.
- NA Sherwani. Algoritmos para la automatización del diseño físico VLSI. Kluwer Academic Publishers, Norwell, MA, tercera edición, 1999.
- Estos libros son utilizados por instructores de clases de posgrado en EDA de todo el mundo. Entonces, si tiene problemas, puede contactar a algunos estudiantes de posgrado que han tomado clases de EDA para obtener ayuda.
- Puede encontrar un proyecto EDA de código abierto bien conocido e intentar comprenderlo. Sin embargo, si carece de los requisitos previos, esto puede ser muy improductivo.
Recomendación personal: recomendaría la opción # 1, tomar clases de posgrado en EDA. Esto se debe a que los profesores de ECE / CS y sus amables asistentes de enseñanza (TA) establecerían el entorno, la infraestructura de soporte, los puntos de referencia (para probar sus herramientas EDA) y lo que no es para usted. Por lo tanto, si tiene el trabajo de base establecido para usted, puede concentrarse en aprender y dominar los conceptos, en lugar de hacer todo (si no la mayoría) del “trabajo de piernas” técnico.
Tenga en cuenta que los puntos de referencia para probar las herramientas EDA para algunos problemas EDA se pueden encontrar en los siguientes concursos / competencias de investigación / programación en EDA.
- CADathlon celebrado antes del inicio de la Conferencia Internacional sobre Diseño Asistido por Computadora (ICCAD): CADathlon en ICCAD. Esta es la variante EDA del Concurso internacional de programación colegiada de ACM (ICPC). Resuelva 6 problemas EDA (desafíos de programación) en 9 horas (8 am a 5 pm).
- Concurso CAD en ICCAD: Concurso CAD 2013 en ICCAD. Entregue binarios para su software EDA que resuelva al menos uno de los problemas de programación EDA.
- Concursos ISPD, que están asociados con el Simposio Internacional de Diseño Físico (ISPD): Concursos ISPD
- Concurso TAU, que está asociado con el Taller Internacional sobre Cuestiones de Tiempo en la Especificación y Síntesis de Sistemas Digitales: Concurso TAU 2013
- Concursos de programación EDA ad-hoc
- Concurso de ubicación basada en la rutabilidad DAC 2012, que se organiza como parte de la Conferencia de automatización del diseño (DAC)
- Desafíos de diseño de ubicación eASIC: problemas de eASIC $ 30,000 Desafío de diseño de ubicación en todo el mundo – Todos bienvenidos a participar
- Retos de programación para el Taller Internacional de Síntesis Lógica (IWLS): Tercer Reto de Programación IEEE en IWLS