Hace 25 años vi a un hombre ejecutar una herramienta de lugar y ruta para un PCB IO_Expander.
Recuerdo que me preguntaba por la falta de aviones. Su VDD y GND tenían 1/8 "de ancho como máximo. El MCU / memory era su diseño. El IO_Expander era su diseño. Y era un tipo clave en la compañía (compañía pequeña) porque se había sumergido en BIOS y protocolos de comunicaciones, en ensamblaje y C. Como dijo "Mientras estaban en la universidad, estaba programando en la PC original".
Resulta que su placa IO_Expander ............. causó reinicios intermitentes de la placa MCU.
Seguí adelante, a video & Trabajo de RF (y algunos códigos de ensamblaje para controles remotos), y se pasó al diseño de silicio. Mi jefe pregunta, un día, "solías trabajar en XXXXX Company. Tienen controladores intermitentes en el piso. ¿Puedes ayudarlos?" DE ACUERDO. Cada IC tenía una tapa de derivación VDD (7400 IC), por lo que la potencia local se mantuvo, pero el problema fue la mezcla de 50 corrientes de retorno SSI con bordes de 10 nS. No se necesita alcance. Solo conozca Trise, Tfall, las corrientes de entrada lógica para la familia 7400.
El tipo original había sido asesinado, en un accidente aéreo. DE ACUERDO. Haciendo honor a su arduo trabajo, simplemente dije "Esos PCB no tienen aviones. The Grounds no puede estar en absoluto tranquilo. Usa aviones". y mostré cómo $$ Vupset = Linductance * dI / dT $$
Con 100nH y 100mA / 10nS, produciría un voltio de trastorno de GND y forzaría la lógica "0" a la región prohibida para TTL.
Escriba las matemáticas ...... 100nH * 0.1amp / 10nS ...... y note la cancelación 'nano', por lo que tenemos 100 * 0.1 / 10 = 1.
Matemáticas fáciles. Elige algunos números fáciles y haz los cálculos en tu cabeza. Puedes elegir los números, así que escoge números fáciles. Si la matemática predice un problema, debe conocer de memoria el margen de ruido de sus circuitos integrados digitales, luego solucione el problema.
El problema era la FÍSICA, no digital ni analógica. La persona que no esté dispuesta a aprender física, por curiosidad, si por ninguna otra razón, no debe llamarse "ingeniero".
Cuando era niño, pude ignorar V = L * dI / dT. Como adulto, implementando sistemas con un rendimiento de 120 y 150dB, el control de riesgos, utilizando la física, es parte de obtener éxitos. Ser capaz de predecir las alteraciones de voltios (a la lógica) y las alteraciones de nanovoltios (para medir los medidores de potencia a 10 ppm de una derivación de corriente).
EDITAR ..... detalles del número 100mA / 10nS:
Las puertas TTL se ven como ..... Capacidades de entrada de 10 pF (uniones de silicio + cableado ESD + PCB).
Para cargar ese 10pF de 0v a + 3v en 10nS: I = C * dV / dT = 10pF * 3v / 10nS = 3mA
El pico de corriente, suponiendo un aumento y una caída triangulares (realistas) de la corriente, es de 6 mA.
Por lo tanto, si 17 señales se conmutan simultáneamente, se produce el transitorio de 100 mA.
A falta de un plano de GND, o una cuadrícula de GND, su GND de cadena margarita única estaba destinada a problemas porque todas las corrientes transitorias interactuaban en el GND compartido de 1/8 "enrutado alrededor del PCB de 8" por 16 ". Probablemente tenía 1 / 2 o 1 metro de ruta GND, serpenteados alrededor de la PCB.
Hay (fue) mucho timbre, y muchos retrasos a través de las lentas puertas TTL, por lo que solo ocasionalmente las energías almacenadas se suman a RESET.
EDIT EDITAR Otro problema de ruido surge al interconectar ADCs de alta precisión (o DAC) con MCU. El MCU nunca es silencioso, internamente. Suponga que suena 0.5 voltios a 100MHz. Para cualquier nivel lógico. Incluso cuando un controlador de salida de MCU se ha mantenido estable durante 100 nanoSegundos o más, después de lo cual su propio timbre (de su transitorio) ha desaparecido [uso 6dB / 10nS para modelar la tasa de decaimiento de las MCU], los elementos internos de la MCU son todavía a lo largo de Por lo tanto, el GND interno y el VDD están rebotando, y ese "controlador de salida silencioso" no es silencioso.
¿Qué sucede cuando este nivel lógico se conecta a un pin de habilitación de ADC? Con su capacitancia ESD / FETgate, digamos 10pF? La corriente es I = C * dV / dT. El dV / dT es d (0.25v * sin (100MHz)) / dt = 0.25 * 628,000,000 = 150Million voltios / segundo.
I (inyectado en el ADC) = 10pF * 150Million = 1e-11 * 1.5e + 8 = 1.5milliAmps.
Con risetime, forma de onda de triángulo asumida, de 5 nS.
Esta corriente tiene que salir del ADC y regresar a la MCU, a través de una ruta de 10nH.
¿Qué es la tensión de tensión, dentro del ADC?
V = L * dI / dT = 10nH * 1.5mA / 5ns (cancelación nano) = 10 * 0.0015 / 5 = 3 milivoltios.
Por lo tanto, su MCU provoca constantemente un ruido de sustrato de 3 milivoltios (gnd noise, VDDnoise porque todas se exploran las rutas posibles para encontrar una ruta de retorno), dentro de su ADC de 16 bits o 18 bits o 24 bits. En el nivel de 8 bits o 10 bits o 12 bits, el diseño analógico parece simple. Pero a nivel de 3 mV (de nuestro cálculo), existen acantilados.
¿Qué sucede si la MCU controla 16 bits desde a un ADC de 16 bits? Los diodos ESD de la MCU están acoplando el rebote interno de la MCU en esas 16 trazas al ADC.