How to read data from an .mif file in Vivado?
Seems like your file path is causing problem. Specify full file path to .mif file

Anyway Vivado will synthesise only a distributed RAM for your array music. To use Block RAM, you have to generate one with initial values in a .coe file and instantiate it. But then, you can access the data only one at time in a clock cycle. You can't access multiple data in 'parallel'. 

Useful link