diseño de transmisión SPI de 8 MHz

2

Actualmente estoy trabajando en una PCB para un cubo de 8x8x8 LED. El diseño de PCB en el estado actual se puede encontrar a continuación:

ElATmega328P(16Mhz)utilizaráSPIparaenviarlosdatosnecesariosacuatrochipsTLC5940(escalade12bitsengris,controladordeLEDde16canales)yunTPIC6B595(registrodedesplazamientode8bits).ParaobtenerFPSlosuficientementealtosytenersuficientetiempodeCPUparalosefectos,lainterfazSPIdebeejecutarsea8MHz.

Estoyunpocoinseguroacercadeldiseñocorrectoparaevitarproblemascomodatosdañados.

Partesdediseñorelevantesparaestaspreguntas:

A)DatosSPI:desdeelpinATmegaSPIhastaelprimerTLCyluegoseconectanencadenaatravésdelossiguientestresTLCalTPIC(cadatraza~2-3cmdelargo)

B)SPIClock:desdeelpinATmegaSPIClockendosdirecciones.Enprimerlugar,alencabezadoISPcorrespondientey,ensegundolugar,entodoslosTLCalTPIC.CadapinderelojdedatosTLCestáconectadoporunaramamuycortadelalíneadelreloj.LalíneaterminaenelpindelrelojdelchipTPIC.(longitudtotaldelalínea~23-25cmdelargosinramas)

C)RelojGS:NecesarioparamantenerenfuncionamientoelPWMenescaladegrisesdelosTLC.AtravésdelfusibleCKOUTestablecido,seenvíaunaseñalconstantede8MhzatravésdeestalíneaatodoslospinesdelrelojenescaladegrisesTLC(~20cmdelargosinsucursales).

D)Enblanco:DeATmegaatodoslosTLC,terminandoenelúltimo.Porlogeneral,elniveldeGNDsealternaregularmentepararestablecerelcontadordePWMenTLC.DurantelaactualizacióndedatosparalosTLCesaltoparalosprimerosbytestransmitidosyluegovuelveaestablecersebajomientrasqueelrestodelosbytessedesplazahaciaafuera(parareducireltiempodeinactividaddelLED)

E)Latch:desdeATmegaconectadoatodoslosTLCyelchipTPIC.Siemprebaja,exceptoporuncambiorápido(cuandoSPInoestáactivo)

F)CapasdePCB:líneasrojasarriba,líneasazulesabajo.Laparteinferiortieneademásunrellenocompleto,comoseveenlaampliacióndeunTLC:

Mispreguntassobreeldiseñodetransmisióndedatos:

1)¿Estábienenrutaresaslíneasdemásde~14cmenparalelo?Enblancoyenganche("líneas tranquilas") están en el centro y las líneas "ruidosas" GS Clock y SPI clock en el exterior (0.05 pulgadas de distancia entre cada línea), pero por lo tanto están cerca de los pines IC.

2) ¿Las ramas cortas de 90 ° están bien para conectar cada IC a las líneas de datos o esto creará problemas?

3) ¿Qué pasa con la reflexión / terminación de la señal (para SPI y reloj GS)? He leído varios artículos sobre ese tema, pero realmente no lo entendí todo. Algunas personas afirman que a 8Mhz no hay problema. Otros diferencian entre la longitud del trance y así sucesivamente. Algunas soluciones, como la terminación de la línea final, aparentemente solo funcionan para una sola carga, por lo tanto, obviamente esto no funcionará para mí. Hasta ahora no he encontrado nada concreto / claro con respecto a este tema. Siento que esto podría ser un motivo de ruptura para mi consejo en este momento.

4) ¿Qué pasa con la ruta de retorno de la señal? Traté de hacer posible que la corriente de retorno siga la traza superior relevante en la capa inferior, pero quedan algunos obstáculos (como las conexiones del reloj GS, el pestillo y las huellas en blanco a los pines del PLC). ¿El diseño a este respecto sigue siendo correcto?

Saludos cordiales,

ratuso

    
pregunta ratuso

1 respuesta

0

Esta respuesta ( está terminada los resistores necesarios para UART, I2C y SPI? ) básicamente te dicen que un SPI de 50 MHz es probablemente bueno para las pistas de > 7 cm. Todo lo que tiene que hacer es mantener el reloj y los datos aproximadamente de la misma longitud. El SPI unidireccional es bastante tolerante debido a la naturaleza dual de registrar los datos en un borde y luego volver a sincronizarlos en el otro.

A 8 MHz, el período es de 125 ns y el tiempo dado para que los datos se liquiden (luego de cambiarlo en el borde del reloj) es de 62 ns. Tendría que hacer que los datos y las longitudes de línea de SCL sean enormemente diferentes para llegar a una demora de cerca de 60 nano segundos.

Esta respuesta solo se aplica al envío de datos desde un maestro: otro problema mayor surge al volver a sincronizar los datos desde un esclavo: esto determina la longitud máxima de la pista / cable de manera máxima, pero si solo está enviando datos de maestro a esclavo. no hay problema.

    
respondido por el Andy aka

Lea otras preguntas en las etiquetas