hi, it seems that either EDK 8.2 or ISE 8.2 has still some issues with the BRAM inits, if an EDK system has more than 1 BRAM block, then the BMM file is generated "looking good", makes sense but when it passes NGCbuild then only the first memory block gets the "PLACED" locations assigned, the second one stays af if not located, those DATA2MEM would not be able to initialize the data into second BRAM block. I wonder if there is some trick or fix or is it required to wait for 9.1 + SPx ? there might be a solution, namly the OpenFire (microblaze clone) includes a perl script that processes the .LL file and re-generates the BMM with proper PLACED constraint _after_ the xilinx tool flow. Using tools from OpenFire to fix up the BUGS in EDK is how is that word - ridicilous? but maybe its the only option currently Antti
EDK 8.2 Block RAM error
Started by ●November 18, 2006
Reply by ●November 18, 20062006-11-18
Antti, I am not sure if I correctly understand what your problem is, but I do some massaging to all of the bmm files, which include more than one address space. Just delete all of the END_ADDRESS_SPACE lines except for the very last one and all of the ADDRESS_SPACE lines except for the very first one. Then correct the address range to include all the blocks and save the file. /Mikhail "Antti" <Antti.Lukats@xilant.com> wrote in message news:1163878069.748187.262430@h54g2000cwb.googlegroups.com...> hi, > > it seems that either EDK 8.2 or ISE 8.2 has still some issues with the > BRAM inits, if an EDK system has more than 1 BRAM block, then the BMM > file is generated "looking good", makes sense but when it passes > NGCbuild then only the first memory block gets the "PLACED" locations > assigned, the second one stays af if not located, those DATA2MEM would > not be able to initialize the data into second BRAM block. > > I wonder if there is some trick or fix or is it required to wait for > 9.1 + SPx ? > > there might be a solution, namly the OpenFire (microblaze clone) > includes a perl script that processes the .LL file and re-generates the > BMM with proper PLACED constraint _after_ the xilinx tool flow. > > Using tools from OpenFire to fix up the BUGS in EDK is how is that word > - ridicilous? but maybe its the only option currently > > Antti >
Reply by ●November 18, 20062006-11-18
MM schrieb:> Antti, > > I am not sure if I correctly understand what your problem is, but I do some > massaging to all of the bmm files, which include more than one address > space. Just delete all of the END_ADDRESS_SPACE lines except for the very > last one and all of the ADDRESS_SPACE lines except for the very first one. > Then correct the address range to include all the blocks and save the file. > > /Mikhail >I tried that too, but did seem to make a difference, the second block does not get any PLACED values during ngdbild :( two blocks only work in case of 128MB space that is made of 2 times 64kb but if i have say 32kb + 8kb then the second one is not working :( Antti
Reply by ●November 19, 20062006-11-19
"Antti" <Antti.Lukats@xilant.com> wrote in message news:1163888792.295560.43610@k70g2000cwa.googlegroups.com...> > two blocks only work in case of 128MB space that is made of 2 times 64kb > but if i have say 32kb + 8kb then the second one is not working :(IIRC it only works when the blocks are of the same size.... So, if you want 40K, you might need to make it out of 5 8K blocks... /Mikhail
Reply by ●November 21, 20062006-11-21
MM schrieb:> "Antti" <Antti.Lukats@xilant.com> wrote in message > news:1163888792.295560.43610@k70g2000cwa.googlegroups.com... > > > > two blocks only work in case of 128MB space that is made of 2 times 64kb > > but if i have say 32kb + 8kb then the second one is not working :( > > IIRC it only works when the blocks are of the same size.... So, if you want > 40K, you might need to make it out of 5 8K blocks... > > /Mikhail1 same size rquirement is BS, the tool should tolerate also different sized blocks 2 and.. same size blocks dont work either, only first one gets PLACED, second stays unprocessed so its just another Xilinx bug, Antti
Reply by ●November 21, 20062006-11-21
> 1 same size rquirement is BS, the tool should tolerate also different > sized blocksIt should... however it doesn't....> 2 and.. same size blocks dont work either, only first one gets PLACED, > second stays unprocessed > > so its just another Xilinx bug,Well, I do have a V4 design, which uses 4 consecutive 32KB BRAM blocks each attached through an individual PLB_BRAM controller and it works (last tried in 8.1)... Perhaps you are trying to do something more advanced... /Mikhail
Reply by ●November 21, 20062006-11-21
"MM" <mbmsv@yahoo.com> schrieb im Newsbeitrag news:4shb3eFvrarsU1@mid.individual.net...>> 1 same size rquirement is BS, the tool should tolerate also different >> sized blocks > > It should... however it doesn't.... > >> 2 and.. same size blocks dont work either, only first one gets PLACED, >> second stays unprocessed >> >> so its just another Xilinx bug, > > Well, I do have a V4 design, which uses 4 consecutive 32KB BRAM blocks > each > attached through an individual PLB_BRAM controller and it works (last > tried > in 8.1)... Perhaps you are trying to do something more advanced... > > > /Mikhail > >hm, i have two 64K blocks on LMB bus, and only first one is updated in the BMM file :( I dont think this is advanced use ? Antti
Reply by ●November 22, 20062006-11-22
> hm, i have two 64K blocks on LMB bus, and only first one is updated in the > BMM file :( > I dont think this is advanced use ?One obvious difference is that I am working with PPC and using PLB_BRAM controllers while you are dealing with MicroBlaze... I can't say why it should matter though... /Mikhail
Reply by ●November 22, 20062006-11-22
MM schrieb:> > hm, i have two 64K blocks on LMB bus, and only first one is updated in the > > BMM file :( > > I dont think this is advanced use ? > > One obvious difference is that I am working with PPC and using PLB_BRAM > controllers while you are dealing with MicroBlaze... I can't say why it > should matter though... > > /MikhailBUG::: EDK 8.2 generates BMMs incompatible with ISE 8.2 when BRAM blocks are consecutive. if there is gap in address space then it all works. there is a workaround to manually fix the generated BMM files Antti
Reply by ●November 22, 20062006-11-22
"Antti" <Antti.Lukats@xilant.com> wrote in message news:1164200166.358021.84400@m73g2000cwd.googlegroups.com...> > BUG::: EDK 8.2 generates BMMs incompatible with ISE 8.2 > when BRAM blocks are consecutive. > if there is gap in address space then it all works. > > there is a workaround to manually fix the generated BMM filesSo they broke it in 8.2!!!! Are you talking about the AR 24296 for the fix? This is as ugly as it can only get :( I can't beleive this.... /Mikhail





