Quiero pasar algunos datos de mi verilog a mi núcleo microblaze en ISE 14.7. Estaba investigando un poco y parecía que la FSL era la forma más fácil de hacerlo.
Lo que hice fue crear un periférico con una entrada de 32b y una salida de 32b de la variedad FSL. Luego hice clic en configurar coprocesador y fsl_link
le agregué mi nuevo.
Hecho esto, agregó fsl_link_0_to_microblaze_0
, microblaze_0_to_fsl_link_0
y fsl_link_0
a mi ventana de interfaz de bus.
Luego hice una verificación de DRC y obtuve
ERROR:EDK:3900 - issued from TCL procedure "::hw_fsl_v20_v2_11_f::check_syslevel_settings" line 14
fsl_link_0_to_microblaze_0 (fsl_v20) - FSL_Clk is unconnected.
ERROR:EDK:3900 - issued from TCL procedure "::hw_fsl_v20_v2_11_f::check_syslevel_settings" line 14
microblaze_0_to_fsl_link_0 (fsl_v20) - FSL_Clk is unconnected.
Todo lo que quiero hacer es pasar algunos valores de registro de mi verilog a mi uBlaze (ni siquiera necesito ir en la otra dirección por ahora). ¿Qué estoy haciendo mal? No estoy seguro de cómo necesito configurar los relojes para que mi FPGA funcione a 200 MHz y mi uBlaze funciona a 100 MHz si eso ayuda.
Cierre el EDK y eche un vistazo al archivo system.mhs. Debería ver el reloj FSL y restablecer las líneas conectadas a sys_clk. De lo contrario, puede agregarlos directamente a ese archivo system.mhs y volver a generar el flujo de bits.
Necesitas dos líneas como esta en el bloque BEGIN/END
BEGIN fsl_v20
PARAMETER ....
PARAMETER ....
PORT SYS_Rst = sys_rst
PORT FSL_Clk = sys_clk
END
Para una lectura nocturna, explore la patente FSL. No lo ayudará con su implementación, pero creo que siempre es interesante leer sobre una patente de tecnología: