When you implement the subservient and the sram as macros, you can't use the parameters in user_project_wrapper.v any more. I think you should remove the parameter and create the blackbox (you only need the inputs and outputs) for each macro with the parameters replaced by the actual values.