Is there any alternative way to debug or download code in stm32M407vgt6 then using usb cable??
I don't really think so because you are using a discovery board.
It does have a STLINK embedded into the discovery board and that is what the usb is hooked to.
Other methods I don't think are really supported on the board.
There are TWO USB connectors, not clear what specifically the OP thinks is the "primary" method in this context. The USB for the STM32F1 ST-LINK, but it's not "directly" connected to the STM32F34
The USB connected to the STM32F4 part can use DFU mode, either the one in the System ROM (BOOT[0] strapped high/vdd), or one created as a user application. The connector can also take a USB Flash drive, and there is a "Firmware Upgrade" example in the Discovery firmware.
One could connect up USART3, or a CAN transceiver, the real constraints here are the user's flexibility to look at other methods.
USART1 (PA9/PA10) is somewhat problematic because of the VBUS/Capacitor issues.
You could connect a different JTAG/SWD pod to the board.
Perhaps the OP can be more specific about what exactly the're trying to do, and why.