Can't get the ACE to run software apps on the ML403

I've created a variant of the GSRD with a fairly large software application that runs great using the impact download and xmd debugger

- However, I can't get the software application to run using the System Ace and CF. I went back to the example programs supplied with the GSRD and couldn't get them to run from the Ace either.

Using the example memtest program supplied with the GSRD I created an ace file using the following cmd line:

C:\>xmd -tcl genace.tcl -jprog -board ml403 -hw implementation/ download.bit -elf ppc405_0/code/ddr_mem_test.elf -target ppc_hw -ace mem.ace

I'm using EDK v7.1 and selected to initialize the BRAM with the bootloop. I copied the resulting ace file onto the Compact Flash. Upon reset my FPGA is being loaded correctly - I can observe the activity of some gpio LEDS I added, however I never get my application to run. It should be running out of the DDR SDRAM but shows no signs of life on the debug serial port. What is preventing the application from starting??

The output from my ace build:

Xilinx Microprocessor Debug (XMD) Engine Xilinx EDK 7.1.2 Build EDK_H.12.5.1 Copyright (c) 1995-2005 Xilinx, Inc. All rights reserved. Executing xmd script : C:/EDK/data/xmd/genace.tcl

####################################################################### XMD GenACE utility. Generate SystemACE File from bit/elf/data Files ####################################################################### GenACE Options: Board : ml403 Target : ppc_hw Elf Files : ppc405_0/code/ddr_mem_test.elf Data Files : HW File : implementation/download.bit ACE File : mem.ace JPROG : true

############################################################ Converting Bitstream 'implementation/download.bit' to SVF file 'implementation/d ownload.svf' Executing 'impact -batch bit2svf.scr'

Copying implementation/download.svf File to mem.svf File

############################################################ Converting ELF file 'ppc405_0/code/ddr_mem_test.elf' to SVF file 'ppc405_0/code/ ddr_mem_test.svf' Target reset successfully section, .text: 0x00000000-0x00001980 section, .boot0: 0xffffc000-0xffffc010 section, .boot: 0xfffffffc-0x00000000 section, .data: 0x00001980-0x000024a2 section, .sdata: 0x000024a4-0x000024a8 section, .sbss: 0x000024a8-0x000024b8 section, .sdata2: 0x000024b8-0x000024b8 section, .bss: 0x000024b8-0x000124c0 Downloaded Program ppc405_0/code/ddr_mem_test.elf Setting PC with program start addr = 0xfffffffc WARNING:Portability:111 - Message file "EDK.msg" wasn't found. PC reset to 0xfffffffc, Clearing MSR Register

Copying ppc405_0/code/ddr_mem_test.svf File to mem.svf File

############################################################ Writing Processor JTAG "continue" command to SVF file 'sw_suffix.svf' Processor started. Type "stop" to stop processor

############################################################ Converting SVF file 'mem.svf' to SystemACE file 'mem.ace' Executing 'impact -batch svf2ace.scr'

SystemACE file 'mem.ace' created successfully

Any or all ideas are appreciated, Thanks.

Reply to
Dave H
Loading thread data ...

I've seen some wierdness with SystemAce downloading large ELF files into off-chip RAM, whereby the first 10 or so words written into the mrmory were corrupted, and the CPU start address was also wrong.

This was with a MicroBlaze on a custom board, but it points to a problem either in the genace.tcl script, the SystemAce controller or even maybe some board-specific issue.

We diagnosed this by changing the ELF file to have a bunch of "bootloop" type opcodes (bri 0 on a microblaze) right at the start, so the CPU would spin immediately after systemAce boot.

Once system ace config/DRAM load completed, we connected with XMD and could see the bogus memory contents and also the bogus starting PC value. We characterised the badness and worked around it, but I don't have a solution as yet.

All that said, I've done big ACE SW downloads (PPC Linux kernels) on an ML403 previously with no issues at all.

Maybe this is relevant?

John

Reply to
John Williams

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.