Tengo un FPGA Altera Cyclone IV y uso el software Quartus II como compilador.
En el "PinPlanner" es posible especificar grupos de pines (por ejemplo, buses de datos). Para cada grupo, se puede especificar un banco de E/S y un estándar de E/S (p. ej., LVDS). Luego, el instalador (lugar y ruta) proporciona "Ubicaciones de instaladores" específicas, especificando un pin preciso para cada cable individual.
¿Hay alguna manera de especificar las ubicaciones precisas de los pines antes de que el instalador intente colocar los pines dentro de cada banco por mí? ¿Se puede hacer esto en el Pin lanner?
Hay dos formas de especificar la asignación de PIN: puede usar PinPlanner o set_location_assignment
especificar el PIN junto con set_instance_assignment
el estándar IO.
Le recomiendo que lea la documentación de administración de E/S de Altera. Pero aquí hay algunos ejemplos:
Estas son asignaciones de ubicación para la interfaz Ethernet RGMII de 1 GbE:
set_location_assignment PIN_D25 -to eth_tx_clk
set_location_assignment PIN_V6 -to eth_rx_clk
set_location_assignment PIN_D17 -to eth_rx_c
set_location_assignment PIN_G20 -to eth_tx_c
set_location_assignment PIN_M20 -to eth_reset_n
set_location_assignment PIN_E21 -to eth_rx_q[0]
set_location_assignment PIN_E24 -to eth_rx_q[1]
set_location_assignment PIN_E22 -to eth_rx_q[2]
set_location_assignment PIN_F24 -to eth_rx_q[3]
set_location_assignment PIN_J20 -to eth_tx_q[0]
set_location_assignment PIN_C25 -to eth_tx_q[1]
set_location_assignment PIN_G22 -to eth_tx_q[2]
set_location_assignment PIN_G21 -to eth_tx_q[3]
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_rx_c
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_tx_c
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_tx_clk
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_rx_clk
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_rx_q
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_reset_n
set_instance_assignment -name IO_STANDARD "2.5 V" -to eth_tx_q
Y aquí hay una entrada de reloj LVDS para FPGA:
set_instance_assignment -name IO_STANDARD LVDS -to in_clk_100
set_location_assignment PIN_AJ19 -to in_clk_100
set_location_assignment PIN_AK19 -to "in_clk_100(n)"
Espero eso ayude. ¡Buena suerte!
No he trabajado con Altera, pero en Xilinx puede especificar manualmente las asignaciones de pines antes de la compilación en el archivo de restricciones (.UCF para Xilinx).
Por lo que puedo decir, puede hacer lo mismo para Altera en el archivo .QSF de Quartus II usando set_location_assignment
.
Consulte el archivo .QSF de ejemplo en la página 6 de este manual de Quartus II .
Aleatorioazul
set_location_assignment
, pero ¿cómo se puede hacer esto usando PinPlanner?usuario8459
Aleatorioazul
usuario8459