¿Cuáles son algunas preguntas sorprendentes en las entrevistas de ingeniería de diseño digital?

Dibuja un reloj asíncrono de 2 relojes. Deben aparecer dos bloques etiquetados como “código gris”, pídales que lo expliquen.

No hago preguntas de “nocaut”, hago preguntas rudimentarias sobre temas básicos pero difíciles como cómo lidiar con las señales asincrónicas. La mayoría de los bloques de diseño son sincrónicos, pero a menudo tienen que interactuar con algún otro bloque que se ejecuta en un reloj diferente, por lo que debe saber cómo pasar un bit y varios bits de un lado a otro.

El otro conjunto de preguntas generalmente se reduce a problemas con verilog. ¿Cómo codifica un flipflop versus una lógica combinatoria, la diferencia entre tareas bloqueantes y no bloqueantes, cuál es una condición de carrera? ¿Qué sucede cuando falta una señal de una lista de sensibilidad?

La otra parte de las preguntas se reduce a “explicar el diseño de su proyecto anterior”. Si puede explicar el diseño de manera concisa y enfocarse en las decisiones importantes y explicar las compensaciones que hizo, entonces tengo una idea de cómo piensa como ingeniero. Si no puede explicarlo, o no puede enfocarse en los problemas arquitectónicos, o no conoce las compensaciones, entonces empiezo a preocuparme un poco.