I tried your code to access SATA via ML605, but reset doesn't occur.
I think line 268, sata_phy.v assign rst_debounce = (rst_1 & rst_2 & rst_3); should be assign rst_debounce = (rst_1 | rst_2 | rst_3);