You can only synthesize RTL codes .. Memories are not designed obeying the RTL flow ..
Memory suppliers do supply memory models, through what usually called Memory Compilers ..
What you do is to decide which memory type and size you need to have in your design .. go to the memory compiler and get the model .. simulate your design, and when implementation phase comes you just instantiate the real memory modules instead of just simulation models.
You don't synthesize memory ..