// Research Stack Unified Top-Level — Tang Nano 9K constraint file // Board: Sipeed Tang Nano 9K // FPGA: Gowin GW1NR-LV9QN88PC6/I5 // Package: QN88 // Clock: 27 MHz onboard oscillator // // Pin mapping matches SparkleTangNano9KTop / build_q16_lut conventions. // No I2S pins — this design uses UART + LEDs only. IO_LOC "clk" 52; IO_PORT "clk" IO_TYPE=LVCMOS33 PULL_MODE=NONE; IO_LOC "rst_n" 4; IO_PORT "rst_n" IO_TYPE=LVCMOS33 PULL_MODE=UP; IO_LOC "user_btn" 3; IO_PORT "user_btn" IO_TYPE=LVCMOS33 PULL_MODE=UP; // Six onboard LEDs: {cpu_busy, q16_done, voltage_mode[1:0], scale_select[1:0]} IO_LOC "led[0]" 10; IO_LOC "led[1]" 11; IO_LOC "led[2]" 13; IO_LOC "led[3]" 14; IO_LOC "led[4]" 15; IO_LOC "led[5]" 16; IO_PORT "led[0]" IO_TYPE=LVCMOS33 DRIVE=8; IO_PORT "led[1]" IO_TYPE=LVCMOS33 DRIVE=8; IO_PORT "led[2]" IO_TYPE=LVCMOS33 DRIVE=8; IO_PORT "led[3]" IO_TYPE=LVCMOS33 DRIVE=8; IO_PORT "led[4]" IO_TYPE=LVCMOS33 DRIVE=8; IO_PORT "led[5]" IO_TYPE=LVCMOS33 DRIVE=8; // USB-UART via onboard BL702 bridge IO_LOC "uart_tx" 17; IO_PORT "uart_tx" IO_TYPE=LVCMOS33 DRIVE=8; IO_LOC "uart_rx" 18; IO_PORT "uart_rx" IO_TYPE=LVCMOS33 PULL_MODE=UP;