¿Cómo puedo, ya sea en la RTL o en un archivo de restricción, asignar bloques DSP específicos a ciertas ubicaciones? Veo que los DSP están etiquetados por sitio, con nombres como DSP48_X5Y30 y me gustaría poder asignar una instanciación DSP particular a ese sitio.
Tengo un diseño, un diseño en mosaico donde, sin restricciones, Vivado coloca las cosas razonablemente dentro de las columnas, pero las organiza en lo que parece ser un orden aleatorio, lo que genera demoras de enrutamiento muy largas. Es básicamente un conjunto sistólico, por lo que el flujo de datos es simple; mapear manualmente una instanciación al sitio DSP correcto debería ser fácil. Sin embargo, cuando rastreo la ubicación automática de Vivado, no es raro que dos columnas que están lógicamente adyacentes estén en los extremos opuestos del chip, con la siguiente columna de regreso cerca de donde está la primera columna, lo que requiere un recorrido completo por el chip para Atraviesa tres etapas.
Cuando miro en línea, veo manuales sobre cómo hacer esto con ISE, pero todo lo que he visto relacionado con Vivado tiene que ver con pblocks, lo que parece una capa adicional de indirección que no tiene sentido para algo tan simple.