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: 
Highlighted
Explorer
Explorer
10,069 Views
Registered: ‎08-13-2007

DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Hi

really urgent (for my client), maybe there is some advice solution, symptoms:

 

PPC SoC design (ISE top) had no OCM memories, after adding them

they are readable and writeable from the XMD, but as soon as PPC software

uses them it crashes completly and instantly.

 

when i write something to DSOCM ram in XMD it reads back ok tough.

 

any super secret settings needed?

the design uses older deprecated EDK IP's it has been revuped 4 times

 

Antti

0 Kudos
1 Solution

Accepted Solutions
Explorer
Explorer
12,139 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Thank you Mike for the suggestions, they may come handy.

 

i guess i forgot to mention that i had problem in OLD design (not mine)

where i ADDED OCM memories?

(reading my post i see i said that AFTER adding ocm memories

meaning it was clear they where not present in original)

 

now i feel so stupid. how could i waste such amount of time

2.5 WEEKS, with such a silly problem.

 

getting old i guess. i had completly forgotten that i must

read page 165 in ug018.PDF

 

case closed.

it all works.

 

Antti

for others: if you have problem where DSOCM memory

doesnt work, make sure you have read and understand

the bit settings in DSCNTL register.

they are autocalculated by BSB generate, but not fixed

afterwards when system changes.

 

 

 

 

 

View solution in original post

0 Kudos
10 Replies
Explorer
Explorer
10,068 Views
Registered: ‎08-14-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Hi Antti, long time no see.

 

First, when you're reading/writing DSOCM via the PPC, you're actually using the PPC to do it. Therefore, your DSOCM should be good. Now the ISOCM is a different beast. I've never been able to peek/poke that memory from the debugger, ever. I've only been able to program it in the bitstream.

 

Did you make sure to keep the proper memory 'distance' between the two memories? IIRC, I think there needs to be a 4MB difference between the addresses used for ISOCM and DSCOM. As such, you normally see the IS mapped to 0xFFFF0000 and the DS mapped to 0xFEFF0000.

 

HTH,

-- Mike

Explorer
Explorer
10,064 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Hi Mike

 

hm,, i have tried zillion of variants

DSocm only, ISOCM only, both..

as soon as some of the OCM memory is accessed the PPC SW dies

and the XMD DOES read writre DSOCM OK

 

i had 0xE000_0000 and 0xD000_0000 as base addresses, I assumed it safe?

 

thanks for quick reply

believe it or not i am fighting this issue 3rd week.

so gettimg temperature already from it

 

Antti

0 Kudos
Explorer
Explorer
10,060 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Hm

 

if it doesnt work with xmd it would not work from system ace either then?

because i think the genace uses same method as xmd to load the memory?

 

small update: i have the ocm memories working on the target board with 

EDK BSB generated demo design, so i am going to compare all connections

and parameters with the failing design in the hope to find the issue

 

but maybe it want help, so stil looking for extra advice

 

Antti

0 Kudos
Explorer
Explorer
10,049 Views
Registered: ‎08-14-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

SystemACE uses the same commands as XMD to perform memory manipulations.

 

If you're going to initialize the ISOCM/DSOCM, if they're BRAM, just have it done as part of the image build (Initialize BRAM in EDK gui). That's the only way I've been 100% succesful with it.

Explorer
Explorer
10,044 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Hi

 

thanks!

yes i know the ace gen internals.

what you say is SCARY !!

i need both the DSOCM/ISOCM and external DDR2 to be initialized from systemACE

 

and there is no way to say: please put .vectors to ISOCM (into bitstream)

and use the rest of the sections to init via ace/jtag

 

I did 99% of test while configuring from ACE, but eh stack/heap

are not needed init, so the system with DSOCM only should have

worked also from systemace

 

still many thanks, i will be carefull with this issue.

but eh, if that doesnt work (ocm init from systemace)

i have to put RED ALERT WEBASE this must be fixed!!

 

Antti

 

0 Kudos
Explorer
Explorer
10,033 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

hm

 

i assume you tried 

http://www.xilinx.com/support/answers/29511.htm

and it failed still?

 

Antti

0 Kudos
Explorer
Explorer
10,031 Views
Registered: ‎08-14-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Actually, you can create a system where the vectors are in BRAM and the system is in DDR.

 

When you build the ELF, you'd specify that the sections you want in the I/DSOCM would be placed there, and the rest in corresponding memory. This image is used for bitgen of the FPGA. Next, strip those sections out of the ELF and have only the DDR sections remaining, and feed that ELF to genace tcl script.

 

That should build you a system that you're looking for.

 

I've tried using the ISOCM mapping, but have had on/off success in it always working. I finally gave up on trying to get it to work and just always initialized my BRAM via an ELF.

 

Normally, I use the ISOCM only for my bootstrapping (bootloader at 0xFFFF_FFFC etc), because of these types of problems. That way the the lower instruction memory can be updated as the software runs, changing the interrupt vector table, etc.

Explorer
Explorer
12,140 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Thank you Mike for the suggestions, they may come handy.

 

i guess i forgot to mention that i had problem in OLD design (not mine)

where i ADDED OCM memories?

(reading my post i see i said that AFTER adding ocm memories

meaning it was clear they where not present in original)

 

now i feel so stupid. how could i waste such amount of time

2.5 WEEKS, with such a silly problem.

 

getting old i guess. i had completly forgotten that i must

read page 165 in ug018.PDF

 

case closed.

it all works.

 

Antti

for others: if you have problem where DSOCM memory

doesnt work, make sure you have read and understand

the bit settings in DSCNTL register.

they are autocalculated by BSB generate, but not fixed

afterwards when system changes.

 

 

 

 

 

View solution in original post

0 Kudos
Explorer
Explorer
10,011 Views
Registered: ‎08-14-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution
Ah yes, the DSARC/DSCNTL settings. I ran into the same problem a while back as well. I set mine up once, and then had to go back to BSB, rebuild the system and then copy out the values into my larger design.
0 Kudos
Explorer
Explorer
2,998 Views
Registered: ‎08-13-2007

Re: DSOCM/ISCOM BRAM memories not working in V-4 FX40

Jump to solution

Ha

 

lucky you, i tried the same, but: the system has 125 input clock so 3:1 to clock ration in BSB is not possible.

so the values copied from BSB did not work

 

it SO STUPID. it would not cost xilinx a lot, to have the DSCNTL values editable as drop down combo box where you select the ppc:ocm clock ration etc..

 

 

but no, it has hex entry only

 

Antti

0 Kudos