Jump to content
  • 0

Not Accessible from Processor I-Side Interface run Microblaze by SDK


wintermayr

Question

I am a beginner for the nexys4 DDR board, I follow the step to build the microblaze servers  as the link https://reference.digilentinc.com/nexys4-ddr:gsmbs

When I run the echo_server on the sdk, I am struggling on the memory mapping problem. 

java.lang.RuntimeException: Failed to download ELF file

Unknown Error Occured
    Section, 0x80000000-0x8002e173 Not Accessible from Processor I-Side Interface

    at com.xilinx.sdk.targetmanager.internal.TM.downloadELF(TM.java:686)
    at com.xilinx.sdk.debug.core.internal.AppRunner.run(AppRunner.java:129)
    at com.xilinx.sdk.debug.core.XilinxAppLaunchConfigurationDelegate.runApplication(XilinxAppLaunchConfigurationDelegate.java:609)
    at com.xilinx.sdk.debug.core.XilinxAppLaunchConfigurationDelegate.launch(XilinxAppLaunchConfigurationDelegate.java:296)
    at com.xilinx.sdk.debug.ui.XilinxAppLaunchDelegateWrapper.launch(XilinxAppLaunchDelegateWrapper.java:31)
    at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858)
    at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
    at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)
    at org.eclipse.debug.internal.ui.DebugUIPlugin$7.run(DebugUIPlugin.java:1104)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
 

I don't know what is the I-side interface of the processor.  I verily linker script file for memory region mapping as suggested in the tutorial  step 9. 

9.1) In the linker script, take a look at the Section to Memory Region Mapping box. If you did the Make DDR2 External step then the target memory region column must read mig_7series_0.
9.2) Scroll down to check if this applies to all rows. If for any region it does not say mig_7series_0, then click on the row under the Memory Region column and select mig_7series_0.

I am sure I didn't use the BRAM for mapping.  So I don't think it is due the out of range memory.  

And I try to enlarge the stack and heap size as someone suggest could solve this problem, but still got the error message. 

Here is the message print out from the XMD console.

Downloading Program -- C:/FPGA_project/Tutorial/microblaze_tutorial/project_server_memory/project_server_memory.sdk/echo_server/Debug/echo_server.elf
    section, .vectors.reset: 0x00000000-0x00000007
    section, .vectors.sw_exception: 0x00000008-0x0000000f
    section, .vectors.interrupt: 0x00000010-0x00000017
    section, .vectors.hw_exception: 0x00000020-0x00000027
    section, .text: 0x80000000-0x8002e177
    section, .init: 0x8002e178-0x8002e1b3
    section, .fini: 0x8002e1b4-0x8002e1d3
It seems the problem is mapping the .text into that range of memory. 

attached is the lscript.ld 

MEMORY
{
   microblaze_0_local_memory_ilmb_bram_if_cntlr_microblaze_0_local_memory_dlmb_bram_if_cntlr : ORIGIN = 0x50, LENGTH = 0x1FB0
   mig_7series_0 : ORIGIN = 0x80000000, LENGTH = 0xA000000
}

So can anyone explain why we got this problem? and how to solve this efficiently?

It seems that everyone got the same error message but have different solution get out.

 

lscript.ld

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

Hi wintermayr,

Sorry it's been a while. I would try going back and changing the amount of memory you allocate to your microblaze IP during block automation. Unfortunately, this tutorial is very old, and needs to be updated. I will try to update it tonight. In the mean time, during step 2.5) change local memory to 32KB or more and cache to 16KB or more. Hopefully this wil fix your problem!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...