en mi última pregunta obtuve algunas respuestas muy interesantes que me hicieron repensar mucho sobre mi diseño en cuanto a si necesito o no resistencias de terminación. Además, el diseño propuesto en esta respuesta, así como la respuesta en esta pregunta en particular , me hicieron repensar mi enfoque en general. Ahora, esta probablemente será una pregunta larga, pero espero que alguien tenga la paciencia de leer y aclarar las cosas. :)
Fondo
Estoy trabajando en un proyecto desde hace un tiempo que, entre otras cosas, involucra el diseño e implementación de la comunicación entre un FPGA y un puente USB 3.0, el MachXO2 y el FT601 respectivamente. Es mi primer diseño de alta velocidad y mi objetivo es adquirir experiencia y conocimientos sobre los principios de este tipo de diseño.
Pasé el mes pasado estudiando una gran cantidad de literatura que incluye recursos de aquí , varios otros artículos de fuentes confiables (como TI o preguntas hechas aquí), así como el libro del Sr. Bogatin, "Integridad de señal y energía: simplificado". Debido a limitaciones de tiempo, no he estudiado con tanta profundidad como me gustaría, pero creo que tengo las ideas fundamentales. Mi problema y confusión radica en la aplicación de aquellos.
Primer enfoque
Mi primer enfoque sobre el tema fue examinar los datos que tengo para ambos circuitos integrados para determinar si puedo o no escapar de la integridad emitida manteniendo los rastros lo suficientemente cortos. FT relojes a 100 MHz pero no proporciona tiempo de subida. Por otro lado, el MXO2 proporciona un archivo IBIS para el diseño, que informa un tiempo de subida de 0,8 ns, que parece racional para usar también como tiempo de subida para FT. Para 0,8 ns, PCB Toolkit informa una longitud máxima de seguimiento de 1,25 pulgadas. Aunque logré tal longitud, los rastros estaban muy apretados, lo que puede introducir una diafonía significativa. Además, la simulación con MXO2 IBIS para mi diseño en Altium reveló un exceso y un defecto significativos. Ahora entiendo que esto puede no ser del todo correcto ya que no tengo un IBIS adecuado para FT, pero de todos modos me alarmé.
Terminación de R
Para estar seguro, decidí usar resistencias en serie y terminar las trazas con 50 Ω. El PCB, por supuesto, está diseñado de tal manera que las pistas particulares tienen una impedancia de 50 Ω. Elegí ese valor porque la Utilidad de configuración FT le permite configurar la fuerza de la unidad pin como 50 Ω, por lo que estamos bien con este controlador, y MXO2 maneja las líneas como 3.3 V, 8 mA, lo que se traduce aproximadamente como 50 Ω también por lo que he leído. Además, el hecho de que muchas de las líneas sean bidireccionales desconcierta aún más la situación. Por lo que he leído, las líneas bidir deben terminar en ambos sentidos. Entonces, coloqué R en mi diseño tanto al principio como al final de las líneas, ejecuté la simulación nuevamente y obtuve algunas curvas suaves. Entonces hice mi pregunta anterior.
Mi fuente de confusión
Ahora, puede preguntarse por qué, dado que ambos controladores parecen tener una salida de 50 Ω, utilicé el esquema de terminación. Y mi respuesta es porque no conozco la impedancia de cada receptor. Y aquí es donde empieza la confusión para mí. La teoría y esas cosas están bien, pero estoy atascado en la aplicación práctica.
Según la teoría, si Zt, Zr y Z0 son iguales (o cercanos), no se producirán reflexiones. Conozco Z0 desde que lo diseñé, pero ¿qué pasa con Zt y Zr? Y para complicar aún más las cosas, esas líneas son bidireccionales, por lo que cambian de funcionalidad.
Para el FT, sé que puede ser de 50 Ω, ya que puede configurar el chip para que lo haga. Pero aunque MXO2 en LVCMOS33, 8 mA también deberían tener 50 Ω, y el visor IBIS informó que la línea en realidad tiene mucho menos, como 25-30 Ω, lo que me complica más las cosas.
Pero independientemente del archivo IBIS (muchos proveedores no proporcionan uno de todos modos), mi confusión se resume en estas preguntas simples y probablemente ingenuas:
Tengo las hojas de datos de ambos circuitos integrados. ¿Dónde está escrita, implícita o se puede calcular/extraer la impedancia de entrada/salida de los pines?
¿La impedancia de salida es la misma que la impedancia de entrada para los pines de E/S?
¿La especificación del protocolo (en este caso LVCMOS33) especifica la impedancia de E/S?
¿Cómo se supone que un diseñador sabe que las impedancias coinciden entre esos 2 circuitos integrados, por lo que todo lo que se requiere es una línea controlada?
Dado que el diseño mencionado en mi otra pregunta no usa R, entonces la única respuesta razonable en la que puedo pensar es que probablemente todo el diseño sea de hecho una impedancia específica, así como los FPGA adjuntos.
Todo eso probablemente parezca bastante trivial para un diseñador experimentado, pero realmente me ha intrigado durante bastante tiempo. Si mi reputación lo permitiera, con mucho gusto ofrecería una recompensa por esta pregunta. Busqué pero pude aterrizar en cualquier información.
No leí todo tu muro de texto, pero no creo que las respuestas a tus preguntas dependan mucho de lo que escribiste.
Tengo las hojas de datos de ambos circuitos integrados. ¿Dónde está escrita, implícita o se puede calcular/extraer la impedancia de entrada/salida de los pines?
Los diferentes proveedores tienen diferentes convenciones sobre cómo lo informan. Uno podría reportar una impedancia de salida. Uno podría reportar un límite. Uno podría reportar un típico curva. Tendrá que leer cada hoja de datos individual y ver cómo especifican su chip.
Para algunos tipos de circuitos integrados, las impedancias de entrada y salida no se especifican en absoluto.
¿La impedancia de salida es la misma que la impedancia de entrada para los pines de E/S?
No necesariamente. Para un búfer digital, esperaría que la impedancia de entrada fuera muy alta y la impedancia de salida muy baja, por ejemplo.
¿La especificación del protocolo (en este caso LVCMOS33) especifica la impedancia de E/S?
Para CMOS, sí, puede esperar una impedancia de salida "muy baja", tal vez unos pocos ohmios. Y la impedancia de entrada estará dominada por la capacitancia, que muy a menudo se especificará.
¿Cómo se supone que un diseñador sabe que las impedancias coinciden entre esos 2 circuitos integrados, por lo que todo lo que se requiere es una línea controlada?
Para los diseños CMOS, por lo general, no hace coincidir las impedancias, simplemente mantiene las líneas lo suficientemente cortas como para que no importe. Se puede usar una resistencia en serie de unos pocos ohmios en los controladores para reducir el timbre, pero aún así no se espera una terminación coincidente real.
Una cosa que elegí de tu texto,
Para 0,8 ns, PCB Toolkit informa una longitud máxima de seguimiento de 1,25 pulgadas.
Una opción es usar una resistencia en serie en la fuente para aumentar los tiempos de subida y bajada. Si aumenta el tiempo de borde a 2 ns más razonables (para un período de reloj de 10 ns), obtendrá una longitud de seguimiento máxima inigualable con la que es mucho más fácil trabajar.
¿Este es un enlace punto a punto?
Luego, la terminación de la fuente por la impedancia de salida de los controladores es probablemente todo lo que necesita si puede configurar el controlador para que coincida con la impedancia de línea (que parece que puede).
Si, por ejemplo, el controlador es de 50 ohmios y la impedancia de línea es de 50 ohmios impulsando una entrada cmos (esencialmente, un circuito abierto ligeramente capacitivo), obtendrá casi un 100% de reflexión en el receptor, lo cual está bien porque será correctamente terminado por la impedancia de salida del controlador. Tenga en cuenta que el doble voltaje en el receptor en comparación con el voltaje que se propaga en la línea es correcto debido al divisor formado por la impedancia de la línea y la impedancia de salida del controlador, obviamente una vez que la reflexión llega al controlador y se termina la condición de estado estable se aplica y la impedancia de línea ya no es relevante.
Donde este tipo de cosas va en forma de pera es si tiene una topología de bus de caída múltiple o controladores muy rígidos, cualquiera de los cuales terminará necesitando algún tipo de terminación para obtener un buen comportamiento, pero no parece que ese sea el caso aquí.
Hay muchas formas de interconectar dos dispositivos. Según el tiempo y la velocidad de la conexión, puede usar un espectro de conexión, desde líneas sin terminación de un solo extremo hasta muchos tipos de transceptores diferenciales controlados por impedancia. No estoy seguro acerca de Altera, pero simplemente obtenga casi cualquiera de las hojas de datos de Xilinx o guías de diseño de E/S, como esta , y verá toda la variedad y muchas opciones disponibles.
manos
el fotón
manos
el fotón
manos
el fotón
joribama
el fotón
manos
el fotón