How to write to DDR3 and SATA3 using Virtex 7 FPGA and Uart?
For Virtex 7, you have a hard core PCIe Gen3 already on the device.

The problem is the SATA that is something you have to either buy or write yourself, SATA3 is 6GBits/s which is going to be a challenge to get it to work, even if you have the IP already in your hands. 

I did a project using PCIe Gen3 on Virtex7 (VC707 and VC709 boards), it was not an easy task and took a lot of time and energy. 

The DDR3 and the UART can be easily connected using a microblaze system or use the memory generator to access.