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: 
Participant ggaroia
Registered: ‎09-05-2017

How to manually force the BlockRAM implementation style in MicroBlaze/IPI design?

As from subj, in IPI trying to change the BRAM implementation option from "Minimum Area" to "Fixed_Primitives", for MicroBlaze code memory (LMB_BRAM - Block Memory Generator) autonatically generated by Block Automation.

The Block Memory Generator is defaulted to Algorithm Option "Minimum Area", we want to change it to "Fixed Primitives" to control the memory generation architecture - this is not allowed by the GUI, unless changing Mode to "Standalone", then changing the Algortihm Options to "Fixed Primitives" and then Mode back to "BRAM Controller".
But then the gui switch back the mode to "Minimum Area", not wanted.

So i tried to manually modify the VHDL code generated for the BRAM (lmb_bram.vhd), by changing the "C_ALGORITHM" generic paramter to "0" (modified in the GENERCI MAP instantiation section of the RAM), and even in the "ATTRIBUTE CORE_GENERATION_INFO" attribute.
But Vivado didn't changed the implementation, the memory is still implemented with Minimum Area style.

I even tried modifying the XML and XCI files of the lmb_bram, again setting "C_ALGORITHM" to "0", but implementation result is still the old one with the memory implemented as Minimum Area.

How can I make Vivado IPI generate the LMB BRAM memory with my desired style?


0 Kudos