UPGRADE YOUR BROWSER

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!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor wanhafizzul
Visitor
1,140 Views
Registered: ‎02-21-2018

How to merge optional output register into BRAM

Hi everyone.. i want to ask why the optional output register cannot be merged into the BRAM. 

 

The runme.log file shows the messages as below:-

 

INFO: [Synth 8-4480]---(implemented as a block RAM) might be sub-optimal as no optional output register could be merged into the block ram. Providing additional output register may help in improving timing.

 

Thank you.

0 Kudos
6 Replies
Scholar dpaul24
Scholar
1,122 Views
Registered: ‎08-07-2014

Re: How to merge optional output register into BRAM

@wanhafizzul,

 

Hi everyone.. i want to ask why the optional output register cannot be merged into the BRAM. 

 

Did you "check-out" the box beside Output Registers option while generating the FIFO?

If you don't tell the FIFO gen to add the output register then it will not be added.

 

--------------------------------------------------------------------------------------------------------
FPGA enthusiast!
All PMs will be ignored
--------------------------------------------------------------------------------------------------------
0 Kudos
Xilinx Employee
Xilinx Employee
1,109 Views
Registered: ‎09-20-2012

Re: How to merge optional output register into BRAM

Hi @wanhafizzul

 

Are you using Block memory generator IP or inferring BRAM using RTL code? 

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos
Visitor wanhafizzul
Visitor
1,092 Views
Registered: ‎02-21-2018

Re: How to merge optional output register into BRAM

We are inferring BRAM in RTL following the user guide.

0 Kudos
Visitor wanhafizzul
Visitor
1,078 Views
Registered: ‎02-21-2018

Re: How to merge optional output register into BRAM

This is my simplified version.

 

process(Clk) is begin
if falling_edge(Clk) then
if wrEn then
ram(to_integer(wrAddr)) <= d_b;
end if;

mem <= ram(to_integer(wrAddr));
end if;
end process;

/* Add BRAM optional output register. */
process(Clk) is begin

if falling_edge(Clk) then
if wrEn then

i0_mem <= mem;
end if;
end if;
end process;
q_b <= i0_mem when (sel_wr = "00")

0 Kudos
Participant fvandesa
Participant
32 Views
Registered: ‎05-17-2018

Re: How to merge optional output register into BRAM

Any follow-up on this?

I have the same question. For some reason I can't infer a BRAM with output registers.

 

Frank

0 Kudos
Moderator
Moderator
24 Views
Registered: ‎03-16-2017

Re: How to merge optional output register into BRAM

hi @fvandesa ,

This is an old post.

Please create a new thread with your query so community can help you better to resolve it.

Regards,
hemangd

Don't forget to give kudos and mark it as accepted solution if your issue gets resolved.
0 Kudos