We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Registered: ‎09-25-2014

microblaze BRAM with non power of two size

Finally I found an easy way to increase BRAM memory of my microblaze system to non power-of-two size from 64k to 80k.

Block memory generator should be "Stand Alone" Mode, than you can set any depth. After that you already be able to implement a project and even run microblaze using more memory. But the problem is that Vivado do not generate *.bmm or *.mmi files, so you can`t put your *.elf programm into bitstream.  


One can try to write theese memory-mapping files by hand or with some scripting (such as here), but I was lucky to find an easier way: if an option "Fill remaining memory locations" in Block Memory Generator is choosen - *.bmm and *.mmi file generates in standart implementation flow.


I didn`t found such "lifehack" anywhere, so may be it would be usefull for someone. For me it is very usefull: 128k consumes too much BRAM, but 64k is just a bit small (even with all memory optimizations I know).

Vivado 2017.3

0 Kudos