cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
rikusleroux
Explorer
Explorer
10,586 Views
Registered: ‎05-21-2009

PowerPC not included in reconfiguration

Good day,

 

I'm having some major issues in trying to reconfigure an application that includes a PowerPC on a Virtex-5. The basic idea is to have a fixed PowerPC (thus a static module) and to have a module I can reconfigure to blink an LED. I started with the PlanAhead tutorial, and was able to get my reconfigurable blinking LED up and running. I then added a PowerPC to the ISE design and did the required hardware setup. I also wrote the required C code to turn on other LEDs using the PowerPC as an indication that the PowerPC is working.

 

By setting up a static application (i.e.. Normal synthesis with ISE) the PowerPC turns on the specified LEDs. However, using PlanAhead to implement the reconfigurable version, the LEDs turned on by the PowerPC stays off. I am still able to reconfigure the module blinking the LED, but it seems like the PowerPC-module (or the ELF file) is not included. I tried using Data2mem to include the ELF in the bitstream but to no avail. I also tried using SDK to program the FPGA by adding the bit, bmm, and elf -files separately (just in case I made a mistake in the Data2mem command), but still nothing.

 

A short summary of my PlanAhead methodology:

 

1. Starting a new reconfigurable application as specified in UG743

2. I loaded the top ngc file (my top design in ISE)

3. Added my UCF

4. And manually added the ngc-files of the PowerPC

5. My reconfigurable LED module I set up in a similar way discussed in UG743

6. I then assign the PowerPC to the PowerPC Pblock

7. Implement and generate bitstreams

 

Both DRC and Verification checks show nothing peculiar.

 

Any help will be appreciated. Its driving me mad.

 

Thanks

Tags (2)
0 Kudos
3 Replies
austin
Scholar
Scholar
10,584 Views
Registered: ‎02-27-2008

r,

"Tired using data2mem, but to no avail...."

The compiled c code must go in the BRAM in order to be executed (if that is where the PowerPC is looking for its program).

data2bram is how that happens.

Until you successfully combine the generated bitstream, with the compiled, located c code binary, your PowerPC will have no instructions to execute when DONE goes high.

The 'new' bitstream (old bitstream plus new BRAM binary executable) = working application bitsream.

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
rikusleroux
Explorer
Explorer
10,580 Views
Registered: ‎05-21-2009

Hi Austin,

Thanks for helping me again. So, instead of using data2mem, I should rather use data2bram? For the static application, I added the ELF to the design in ISE. I was looking at the console while generating the programming file and ISE used bitinit and data2mem commands to create download.bit (that worked). Also, the partial reconfiguration tutorial for MicroBlaze (I think it is UG744) used data2mem before converting it into an ace file for compact flash. Could you please ellaborate where I would rather use data2mem?
0 Kudos
rikusleroux
Explorer
Explorer
10,567 Views
Registered: ‎05-21-2009

After performing a search for data2bram, I couldn't find any information on it. The only information I could find was on data2mem, which (and I quote):

"automates and simplifies setting the contents of Block RAM cells on Virtex-5 devices".

What is data2bram and how can I utilize it? I tried searching for it in my ISE install folder, but found nothing.
0 Kudos