He estado haciendo una pregunta similar que recibió algunos votos a la baja, así que estoy reformulando mi tarea (espero que esta le dé más claridad).
Estoy planeando establecer una conexión serie de alta velocidad (dúplex completo de 3 Gpbs) entre dos tarjetas fpga (distancia entre los chips < 15 cm, incluidos los conectores), más precisamente entre spartan 6 y artix 7 (estos no son requisitos absolutos, pero parecen ser los más baratos que tienen transceptores integrados).
No estoy seguro de qué protocolo debo elegir. He estado investigando las especificaciones de RapidIO últimamente, pero parece que tengo que usar un chip de conmutador para conectar dispositivos, pero los conmutadores son bastante caros (~ $ 150 / pieza) e introducen un retraso de al menos 100 ns, así como más de 10 capas Requisito de PCB ( ejemplo ).
PCIExpress no es una opción (aunque el conector es bueno), ya que introduce alrededor de 500 ns de retardo, e idealmente estoy buscando en la latencia de transmisión sub 100 ns (desde un flujo paralelo dentro de un fpga hasta un flujo paralelo dentro de otro). Debido a la alta latencia, 10Gb Ethernet tampoco es una opción.
También hay un protocolo Aurora de Xilinx ( enlace ), pero no puedo encontrar ningún PHY Definiciones de capas y números de retardo. Más de eso, a pesar de que todas las aplicaciones de Serdes de alta velocidad anuncian un bajo número de pines, todas las placas de desarrollo con transceptores integrados utilizan conectores de tarjetas intermedias SMC, ópticas o crípticas con 400 pines. ¿Hay alguna otra opción? Como, ~ 50 pin conector o menos. Entonces, para resumir, las preguntas son:
- ¿Es posible lograr un retardo de sub 100 ns entre dos chips usando serdes?
- ¿Existen especificaciones / ejemplos de PHY para Aurora?
- ¿Será más sencillo lanzar una interfaz BLVDS ancha y usar un bus paralelo de alta frecuencia?
Cualquier sugerencia es muy apreciada!