cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Observer
Observer
659 Views
Registered: ‎07-13-2011

Re: Issue inferring XPM True Dual Port RAM

Jump to solution

From my understanding that is just to indicate that I would like to use byte enables and I do want to use them...

I'm just writing words which are multiples of bytes, so that should be kind of OK...

I don't think that this is all so very strange what I am doing. We are also using FIFO's in our design which convert between 32 and 512 bits using XPM macro's...

Tags (1)
0 Kudos
Reply
1 Solution

Accepted Solutions
Moderator
Moderator
568 Views
Registered: ‎08-08-2017

Hi @dannyjacobs 

This is aspect ratio limitation when byte writes enables are used

 

cap1.jpg

Reference  https://www.xilinx.com/support/documentation/ip_documentation/blk_mem_gen/v8_4/pg058-blk-mem-gen.pdf   -> page 51

I have confirmed this with below test cases.

I have checked the synthesis at my end for shared parameter setting in the forum post and encountered  with same synthesis error.

cap2.png

 

 

I then disabled the byte writes feature and I am able to synthesis without any warning .

 

When using block memory generator , byte write enable and write width port A is 512 , you can only have write width for port B of 128, 256, 512, 1024 and 2048 which is within the range of aspect ratio 4

cap3.png

 

 

 

 

I hope this helps.

-------------------------------------------------------------------------------------------------------------------------------
Reply if you have any queries, give kudos and accept as solution
-------------------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
Reply
4 Replies
Moderator
Moderator
569 Views
Registered: ‎08-08-2017

Hi @dannyjacobs 

This is aspect ratio limitation when byte writes enables are used

 

cap1.jpg

Reference  https://www.xilinx.com/support/documentation/ip_documentation/blk_mem_gen/v8_4/pg058-blk-mem-gen.pdf   -> page 51

I have confirmed this with below test cases.

I have checked the synthesis at my end for shared parameter setting in the forum post and encountered  with same synthesis error.

cap2.png

 

 

I then disabled the byte writes feature and I am able to synthesis without any warning .

 

When using block memory generator , byte write enable and write width port A is 512 , you can only have write width for port B of 128, 256, 512, 1024 and 2048 which is within the range of aspect ratio 4

cap3.png

 

 

 

 

I hope this helps.

-------------------------------------------------------------------------------------------------------------------------------
Reply if you have any queries, give kudos and accept as solution
-------------------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
Reply
Observer
Observer
550 Views
Registered: ‎07-13-2011

Hi pthakare,

Thank you for your response, I was kind of affraid of this...

Does this mean that I can't use my byte enables but just need to write my whole 512 bits word at once and all data that was previously stored is at some point in my 512 bits word is going to be overwritten when I do a write?

Cheers,

Danny

 

0 Kudos
Reply
Moderator
Moderator
533 Views
Registered: ‎08-08-2017

Hi @dannyjacobs 

Yes , the alternative is to  read -modify (the byte you want) and then write .

-------------------------------------------------------------------------------------------------------------------------------
Reply if you have any queries, give kudos and accept as solution
-------------------------------------------------------------------------------------------------------------------------------
0 Kudos
Reply
Observer
Observer
528 Views
Registered: ‎07-13-2011

OK, I'll change my implementation.

Thanks for your help!

Cheers,

Danny

0 Kudos
Reply