¿La división analógica y digital de PCB es imposible con multiplexores?

Estoy tratando de hacer una PCB que tenga una parte analógica y una parte digital.

Dividí la PCB en áreas (más o menos), como fuente de alimentación, MCU (STM32), multiplexores (alrededor de 10 circuitos integrados, mezcla de CD4051, CD4052 y CD4053) y componentes analógicos (principalmente transistores y condensadores para señales de audio).

Sé que se recomienda mantener la parte analógica alejada de la parte digital, pero los multiplexores definen todo el enrutamiento de audio (flexible), por lo que es imposible dividir la placa de circuito impreso en una parte analógica y otra digital, ya que todos los circuitos integrados de multiplexores manejan ambos digitales (el selección de canales) y analógico (los propios canales).

A continuación se muestra mi 'trabajo en progreso'... La mayoría de los circuitos integrados son multiplexores (aunque quiero mantener los circuitos integrados solo digitales en el lado derecho, como los registros de desplazamiento y los cambiadores de nivel). ... y sí, sé que tengo que mover algunos circuitos integrados ya que ahora están fuera del borde :-)

ingrese la descripción de la imagen aquí

¿Cómo puedo asegurarme de que no habrá ruido/diafonía?

Algunas ideas que recopilé/leí sobre:

  • Usando GND para la parte posterior (sin embargo, es imposible dividirlo en un GND digital y GND analógico)
  • No hay señales paralelas digitales junto a las analógicas (también difícil, ya que uso la técnica de Manhattan, de lo contrario, el enrutamiento es imposible)
  • Uso de señales GND paralelas a señales analógicas (no probado, pero cuesta bastante espacio tener muchas señales paralelas).
  • Poner todos los componentes analógicos en un lado de la placa (no se ha intentado, ¿es una buena idea?); no estoy seguro de cómo manejar GND de una buena manera de esta manera.
  • ¿O debería tratar de separar la placa en una parte digital/analógica, y obtener líneas largas desde los multiplexores a los componentes analógicos y enrutar cuidadosamente cada multiplexor para minimizar el cruce de rastros digitales/analógicos?

Tenga en cuenta que principalmente uso componentes SMD, y mis habilidades en electrónica (como pasatiempo) no son lo suficientemente buenas como para hacer un análisis de ruido (si existe tal cosa en la práctica).

Cualquier idea mejor es bienvenida.

Actualizar

Posiblemente no haya mucho problema, ya que los multiplexores solo cambian cuando los usuarios presionan un botón (lo que resulta en un cambio de todas las configuraciones, pero esto es una vez cada 100 ms en el peor de los casos).

Entonces, la mayor "preocupación" es que las señales de 9V (para controlar los multiplexores) cercanas a una señal de audio / analógica (¿mucho más baja?) pueden afectar esa señal analógica. Creo que no, pero no estoy 100% seguro.

Mantenga los bordes digitales tan lentos como los necesite, agregue una resistencia en cada salida digital que tenga que cruzar una parte significativa de la PCB (las matrices de resistencias son sus amigos en estos casos).
@WesleyLee Me temo que necesito un poco más de información... ¿cómo puedo mantenerlos lentos? Puedo reducir la velocidad SPI si eso es lo que quieres decir (pero creo que eso no hace que los bordes sean más lentos).
@WesleyLee Y no estoy seguro de cómo usar las matrices de resistencias en este caso... afaik tienen una sola salida... o te refieres a las matrices de resistencias que tienen muchas resistencias (con dos lados para cada resistencia... no no sé que existen) ... Y también, agregar una resistencia cambiará la salida, por lo que no estoy seguro de qué resultado dará. Actualmente tengo que usar cambiadores de nivel a 9V ya que las señales analógicas son de 9V y manejar los multiplexores con menos no funcionará.
Él no está diciendo que necesita reducir la frecuencia de su reloj, sino el tiempo de subida/bajada del borde del reloj. Incluso un reloj lento, con flancos ascendentes rápidos, tiene múltiples armónicos que pueden acoplarse a otras señales. Las resistencias en serie ayudan a ralentizar los bordes, si puede permitírselo.
@ Big6 Ok, gracias por la aclaración ... Tal vez en mi caso sea menos importante de todos modos, ya que los multiplexores no cambian con frecuencia ... ¿o tener una señal de 9V (continua) cerca de una señal de audio (menor potencia) también es problemático? Solo el reloj SPI que tengo que mantener alejado.
Otra cosa que ayuda, además del enrutamiento en sí, es tener la señal y su capa/plano de referencia lo más cerca posible. En igualdad de condiciones, reduce la diafonía. Hay una página de Henry Ott que entra en detalles. Aquí está ese enlace: hottconsultants.com/techtips/pcb-stack-up-2.html
Lo leeré, gracias por el enlace (editado después de agregar el enlace)
@ Big6 Gracias por el enlace, pero me quedo con un tablero de 2 capas (principalmente debido al costo). Pero es bueno saber cuándo en el futuro tendré algunos tableros críticos o de mayor frecuencia.

Respuestas (1)

Resistencias en serie:

Son resistencias de terminación en serie, cercanas a la fuente de la señal. No reducirán la velocidad de datos de su señal, solo harán que su tiempo de subida/bajada sea más largo (flancos más lentos).

Hay algunas referencias rápidas a esto de Henry Ott , y este video de Robert Feranec , y alguna explicación detallada en esta pregunta/respuesta de EE.SE , por lo que no entraré en demasiados detalles.

Pero básicamente, cuanto más rápido cambie la señal en una línea, más ruido inducirá a su alrededor.

Matrices de resistencias:

Me gusta YC164 , que son fáciles de soldar a mano o colocar manualmente en PCB pegados. Pero básicamente son un ahorro de espacio y un "reductor de número de piezas" si está soldando cosas a mano.

esquemático

simular este circuito : esquema creado con CircuitLab

Gracias ... Lo leeré (mañana, ya que es tarde). Es una buena tarea para mí averiguar cuál debería ser el valor de la resistencia... No sabía que existían. Conozco matrices de red SIP, pero tienen un 'GND' común, son como múltiples resistencias en una, más útiles.
No tiene que usar una matriz de resistencias, es algo que es muy útil si tiene que agregar un montón de resistencias de los mismos valores, una al lado de la otra. Además, hay un montón de calculadoras de diafonía en línea (es decir, ingresa los tiempos de subida/bajada y la distancia/geometría de las pistas, y le dará una diafonía estimada, por lo que podría ser un estadio decente para empezar). Alternativamente, para proyectos únicos y/o velocidades de datos lentas, puede simplemente agregar una resistencia y cambiarla más tarde empíricamente. (es decir, compruebe las señales y la diafonía con un osciloscopio).
@MichelKeijzers: gracias, pero no acepte mi respuesta todavía, ya que podría haber otras respuestas útiles, solo publiqué esto para complementar mi comentario.
Gracias por todos esos consejos... de hecho es un proyecto único (o un punto cero si me encuentro con más problemas ;-))... en realidad es más un experimento de aprendizaje (y espero hacer feliz a alguien más con un posible resultado). Y agregar resistencias también hace posible usar un alcance (tengo uno).
Ok (pero probablemente lo acepte más tarde) ... tal vez en mi caso ni siquiera sea un gran problema (la diafonía para los bordes), como cuando se cambian las configuraciones (y los multiplexores están cambiando), el sonido (pasando por los rastros analógicos) es muy probable que esté apagado de todos modos. Y creo que tener una señal de 9V (continua) junto a una señal de audio de bajo voltaje (cambiante) no es un problema. Debería verificar eso, ya que también tengo un generador de forma de onda. Realmente necesito acostumbrarme a las herramientas que tengo desde hace algún tiempo ;-) Aunque no tengo un PCB con rastros para verificar.
Lo leí todo (no lo entendí completamente), pero al menos tengo algunas pautas mejores. De acuerdo con Robert (me gustan sus videos), están acostumbrados a las señales de tiempo, por lo que planeo hacerlo (ya que las otras señales no cambian a menudo de todos modos).