Unable to load and run program in DDR from SDK

Hello all,
I'm starting to work with Zynq and I'm quite a noob in this field.
I generated a system for a ZC702 board in which the connections to the DDR memory and the GPIO are correct.
When I try to run a "Hello world" example that writes such words via serial, I'm facing the problem that I can just run it from the internal ram on the Zynq, not from the DDR. I will try to explain this with more detail.
When I set the on-chip memory (initial address is 0x00000000) on the linker script and I run the program, the XMD console shows this:
XMD% Processor started. Type "stop" to stop processor
User Interrupt, Processor Stopped at 0x00101104
Processor Reset .... DONE
Downloading Program -- D:/50_EXPs/080715/Zynq_702_projects/zynq_book/zynq_book.sdk/hello_world_gpio/Debug/hello_world_gpio.elf
section, .text: 0x00000000-0x0000191b
section, .init: 0x0000191c-0x00001933
section, .fini: 0x00001934-0x0000194b
section, .rodata: 0x0000194c-0x00001963
section, .data: 0x00001968-0x00001ddb
section, .eh_frame: 0x00001ddc-0x00001ddf
section, .mmu_tbl: 0x00004000-0x00007fff
section, .init_array: 0x00008000-0x00008007
section, .fini_array: 0x00008008-0x0000800b
section, .bss: 0x0000800c-0x0000802f
section, .heap: 0x00008030-0x0000842f
section, .stack: 0x00008430-0x0000a02f
Download Progress.10.20.30.40.50.60.70.80.90.Done
Setting PC with Program Start Address 0x00000000
As you can see, al the addresses are correct. In this moment, the processor executes the program and everything is fine.
Then, if I select the DDR memory (initial address: 0x00100000) on the linker script generation, the console shows:
XMD% Processor started. Type "stop" to stop processor
Software Breakpoint 0 Hit, Processor Stopped at 0x000015bc
Processor Reset .... DONE
Downloading Program -- D:/50_EXPs/080715/Zynq_702_projects/zynq_book/zynq_book.sdk/hello_world_gpio/Debug/hello_world_gpio.elf
section, .text: 0x00100000-0x0010191b
section, .init: 0x0010191c-0x00101933
section, .fini: 0x00101934-0x0010194b
section, .rodata: 0x0010194c-0x00101963
section, .data: 0x00101968-0x00101ddb
section, .eh_frame: 0x00101ddc-0x00101ddf
section, .mmu_tbl: 0x00104000-0x00107fff
section, .init_array: 0x00108000-0x00108007
section, .fini_array: 0x00108008-0x0010800b
section, .bss: 0x0010800c-0x0010802f
section, .heap: 0x00108030-0x0010842f
section, .stack: 0x00108430-0x0010a02f
Download Progress.10.20.30.40.50.60.70.80.90.Done
Setting PC with Program Start Address 0x00100000
 But the program is not run and the processor is like "blocked".
There is just one scenario in which this second configuration works, and it's when the on-chip memories were previously loaded with the first configuration. This could indicate that the program counter is not pointing to the DDR, but to the on-chip memory. Then, when I select the DDR, if there is nothing on the memories of the chip, it does not execute anything.
Does anyone have any idea of what's exactly happening and how to fix it?
Thanks in advance!
Ignacio.

Hello Ignacio,
Are you able to step through at all with the debugger to see if it gets stuck somewhere in particular?
As a test of DDR setup itself, what happens if you link to OCM but do some pointer access directly to DDR (maybe write 0xdeadbeef to 0x10000000, readback 0x10000000, then print it)? Does it work okay?

Similar Messages

  • Unable to load and run bare metal program in DDR from SDK 2015.2

    Hello all,
    I'm starting to work with Zynq and I'm quite a noob in this field.
    I generated a system for a ZC702 board in which the connections to the DDR memory and the GPIO are correct.
    When I try to run a "Hello world" example that writes such words via serial, I'm facing the problem that I can just run it from the internal ram on the Zynq, not from the DDR. I will try to explain this with more detail.
    When I set the on-chip memory (initial address is 0x00000000) on the linker script and I run the program, the XMD console shows this:
    XMD% Processor started. Type "stop" to stop processor
    User Interrupt, Processor Stopped at 0x00101104
    Processor Reset .... DONE
    Downloading Program -- D:/50_EXPs/080715/Zynq_702_projects/zynq_book/zynq_book.sdk/hello_world_gpio/Debug/hello_world_gpio.elf
    section, .text: 0x00000000-0x0000191b
    section, .init: 0x0000191c-0x00001933
    section, .fini: 0x00001934-0x0000194b
    section, .rodata: 0x0000194c-0x00001963
    section, .data: 0x00001968-0x00001ddb
    section, .eh_frame: 0x00001ddc-0x00001ddf
    section, .mmu_tbl: 0x00004000-0x00007fff
    section, .init_array: 0x00008000-0x00008007
    section, .fini_array: 0x00008008-0x0000800b
    section, .bss: 0x0000800c-0x0000802f
    section, .heap: 0x00008030-0x0000842f
    section, .stack: 0x00008430-0x0000a02f
    Download Progress.10.20.30.40.50.60.70.80.90.Done
    Setting PC with Program Start Address 0x00000000
    As you can see, al the addresses are correct. In this moment, the processor executes the program and everything is fine.
    Then, if I select the DDR memory (initial address: 0x00100000) on the linker script generation, the console shows:
    XMD% Processor started. Type "stop" to stop processor
    Software Breakpoint 0 Hit, Processor Stopped at 0x000015bc
    Processor Reset .... DONE
    Downloading Program -- D:/50_EXPs/080715/Zynq_702_projects/zynq_book/zynq_book.sdk/hello_world_gpio/Debug/hello_world_gpio.elf
    section, .text: 0x00100000-0x0010191b
    section, .init: 0x0010191c-0x00101933
    section, .fini: 0x00101934-0x0010194b
    section, .rodata: 0x0010194c-0x00101963
    section, .data: 0x00101968-0x00101ddb
    section, .eh_frame: 0x00101ddc-0x00101ddf
    section, .mmu_tbl: 0x00104000-0x00107fff
    section, .init_array: 0x00108000-0x00108007
    section, .fini_array: 0x00108008-0x0010800b
    section, .bss: 0x0010800c-0x0010802f
    section, .heap: 0x00108030-0x0010842f
    section, .stack: 0x00108430-0x0010a02f
    Download Progress.10.20.30.40.50.60.70.80.90.Done
    Setting PC with Program Start Address 0x00100000
     But the program is not run and the processor is like "blocked".
    There is just one scenario in which this second configuration works, and it's when the on-chip memories were previously loaded with the first configuration. This could indicate that the program counter is not pointing to the DDR, but to the on-chip memory. Then, when I select the DDR, if there is nothing on the memories of the chip, it does not execute anything.
    Does anyone have any idea of what's exactly happening and how to fix it?
    Thanks in advance!
    Ignacio.

    Hello, bwiec,
    thank you four your response. I tried what you suggested, and it worked with no problem. I set the linker script so to store everything in OCM and executed the following piece of code:
    u32 *memPtr;
    u32 dataRead;
    memPtr = 0x00100001; /* DDR address */
    *memPtr = 0xdeadbeef;
    u32 dataRead = *memPtr;
    The value of dataRead is 0xdeadbeef;
    So, apparently that was not the problem. But, fortunately, I found the solution to this issue. I will give the details in case it is useful for more people.
    After triying to isolate the problem, I got to the following situation (I have been always working in SDK 2015.2):
    A project created with SDK 2014.2, with Hardware Platform Specification, Board Support Package and C project was working fine.
    The linker script of this project was indicating DDR usage in all the cases.
    The BSP was using Standalone OS 4.1
    When clicking Run, everything was working.
    I performed a board reset to clean the DDR.
    Then, if I changed the BSP to one created with the current version of SDK (2015.2), then the DDR memory was not being loaded properly, so the PC of the processor was pointing to the DDR base address but in that position there was no instruction, so it "blocked".
    Then if I changed the "Referenced BSP" to the original one, it worked again.
    If I went back to the 2015 BSP, then it worked, because the DDR was already loaded.
    If a reset of the board was performed, the project referencing the 2015 BSP stopped working, because the DDR memory was again empty and not being loaded.
    At the end, with the help of a coleage, I was able to find the problem, even though I don't really understand why this made my desing not to work:
    The SW16 of the ZC702 board was set to: SW16(1 to 5) = "00010". This configuration:
    Works with the BSP 2014 - referenced projects and the generated ".elf" files.
    Does not work if the C projects point to a BSP generated in SDK 2015.2, because the DDR is not loaded.
    The configuration that works for both cases is SW16(1 to 5) = "00000".
    I personally don't understand exactly what's wrong with the previous configuration of the switch, since it affect to the booting and it was working like that in version 2014.2. Does anyone know why this happens?
    Anyway I'm happy to have found the solution to this issue!
    Regards,
    Ignacio.

  • HT1926 I a m unable to install and run the lates - Error 7()Windows error 1114)t version of iTunes. I keep getting a rruntime error - R6034 and a windows error

    I am unable to install and run  the latest version ot iTunes. Getting "Runtime error - R6034. An application has made an attempt to load the C runtime library incorrectly"
    Error 7(Windows error 1114)

    Try and not duplicate these issues and do a search next time.
    Now load https://discussions.apple.com/thread/5826672?start=0&tstart=0
    and that Topic has the correct information to fix this problem.
    Regards
    pcbugfixer

  • American Express Transaction Loader and Validate program error

    I am working on AMEX integration with iexpenses. When I run the American Express Transaction Loader and Validate program, Cocurent program run with an error:
    header and tailor do not have same report create date. submit this request again with the correct data file from American Express
    Any suggestions?
    Thanks,
    Pradeep

    Thank You. I tried to implement this functionality ( American Express Transaction Loader and Validation Con prog) by seperately running loader and validator
    1.e 1.American Express Transaction Loader 2. Credit Card Transaction Loader Program. I could able to run them successfully. I could see some new credit cards
    (which are in the data file) and assign them to employees through Internet Expenses Setup and Administration Responsibility -> Internet Expenses Administration -> new Accounts Tab
    But, When I login throgh that employee, I could not see the transactions in the Iexpenses resposibility. Where can one see his transactions? Is there any iexpnses user guide available for R12?
    Thanks.
    Pradeep

  • American Express Transaction Loader and Validation Program setups

    Hi Experts,
    I have to generate a AMEX Remittance File after running the "*American Express Transaction Loader and Validation Program*". But, i am not understanding what are the minimum setups required to run this program.
    I know the file name and path which is required for this program. Even though i am not getting what are the setups needed for it.
    Please help me out in any form like setup name or any doc etc...
    Thanks,
    Giri

    I have to generate a AMEX Remittance File after running the "*American Express Transaction Loader and Validation Program*". But, i am not understanding what are the minimum setups required to run this program.
    I know the file name and path which is required for this program. Even though i am not getting what are the setups needed for it.
    Please help me out in any form like setup name or any doc etc...How To Setup Card Expense Type Mapping So That Expense Types Automatically Default for Credit Card Transactions? [ID 278060.1]
    American Express Migration To SFT Servers, And Desupport Of Digital Certificates In PKCS#12 Format [ID 1111385.1]
    About Oracle Internet Expenses Mini-pack 11i.OIE.K [ID 342588.1]
    Oracle Internet Expenses Release Notes for Release 12.1.3 [ID 1178943.1]
    Oracle Payables User Guide, Expense Reports and Credit Cards chapter, Mini-pack 11i.OIE.J [ID 289812.1]
    Thanks,
    Hussein

  • Debug and run programs in virtual machine

    hi everyone
    how are you
    i want to know if there is any way to debug and run programs on visual studio to a virtual machine with a specific operating system i`m using visual studio 2013 ultimate in 64 based windows 8.1 system
    thanks

    but can you explain to me how can i configure remote debugger to run and debug to a virtual machine
    You treat the VM as though its any other real machine on your network.
    See the article I linked.
    im using Vm workstation 11 and windows xp running on it
    It's been a while since I used VMWare WS and I have a vague
    recollection that it may have some special facility for debugging with
    VS - but I never used it.
    also i want to know if i can run and debug to another computer on the same network
    Yes, you can - if the OS is supported by the version of VS you're
    using.
    Dave

  • After load and run primary installation firefox it run to endless without load any thing

    after load and run primary installation firefox it run to endless without load any thing
    it run for more than 2 hours.
    this happened after install VLC with "groovorio" adware and find that Firefox can't update so I uninstall it to reinstall it without success.
    nothing happened no message appear but the download and installation for firefox still running endless.

    after load and run primary installation firefox it run to endless without load any thing
    it run for more than 2 hours.
    this happened after install VLC with "groovorio" adware and find that Firefox can't update so I uninstall it to reinstall it without success.
    nothing happened no message appear but the download and installation for firefox still running endless.

  • How to compile and run a .java file from another java program

    hello,
    can any one tell me how to compile and run a *.java* file from another java program which is not in same directory?

    Well a smarter way of implementing this is by using a solution provided by Java Itself.
    If you are using J2SE 6.0+ there is an in built solution provided along with JDK itself and inorder to go ahead with solution the below are set of API which you;d be using it for compiling Java Programs (Files)
    http://java.sun.com/javase/6/docs/api/javax/tools/package-summary.html
    How do i do that ??
    Check out the below articles which would help you of how to do that
    http://www.ibm.com/developerworks/java/library/j-jcomp/index.html
    http://www.javabeat.net/javabeat/java6/articles/java_6_0_compiler_api_1.php
    http://books.google.com/books?id=WVbpv8SQpkEC&pg=PA155&lpg=PA155&dq=%22javax+tools%22+compiling+java+file&source=web&ots=XOt0siYe-f&sig=HH27ovuwvJgklIf8omTykUmy-eM
    Now once we are done with compilation.In order to run a Specific class all you ought to do is create an object and its specific methods of a specified class included in the CLASSPATH which you can manage it easily by usage little bit reflections.
    Hope that might help :)
    REGARDS,
    RaHuL

  • Forcing an application to load and run from memory

    Greetings,
    Is it possible to force an application to load and run only in RAM? I've got a V60 (i386) with 4gb of RAM running Solaris 10 (beta). We have an application that we would like to ensure loads and runs only in RAM and not swap to the disk. The machine is used for this one application that uses about 50% of one CPU at all times. Even with this application running, of the 4gb of RAM, 3.5gb are unused.
    The swap size is equal to the size of the RAM, but we want to prevent the application from ever using swap. Is that possible?
    Thanks,
    Bob

    Unless there is memory pressure solaris kernel does not throw away a process' pages onto swap.
    When you have 3.5Gb of unused main memory, there is no chance for this application pages to be
    put on swap.
    You can use 'pmap -x' to check RSS matches the process size.
    'swap -s' tells you how much swap is actually used.

  • How do I load and run a sequence from the Tools menu?

    If I can build a sequence to do something special, what's the syntax required to load and run it from a menu? This must be transparent to the customer. I know how to add menu items, but the tools customize window seems to be looking for an exe.

    When you go to tools>>customise and then add in an item to appear in a menu, you need to select sequence, rather than command.
    Hope that helps
    S.
    // it takes almost no time to rate an answer

  • OS is loaded and running but screen freezes on the loading screen

    My laptop is freezeing on the loading screen but the os is loaded and running. I know this because i was able to use command keys to open itunes and play music. At first i thought it was the hard drive so i replaced it and i am still having the same problems. I'm stumped, can anyone help me?
    Some one please help?

    "The gray boot screen with the apple and the loading ring."
    "i was able to use command keys to open itunes and play music."
    You could do that from the "gray boot screen?" Didn't know that was even possible!
    Disconnect all devices from your computer and do the following:
    Boot up from your install DVD and run *"Repair Disk"* from the Utility menu. If you are able to reach the desktop after doing the above, repair permissions and restart your computer afterwards.
    !http://i50.tinypic.com/izvwo1.gif!

  • Mail Slow to Load and Running Slowly

    Yesterday, I tried to copy a block of text from Sarari over to an email. Something I have done many times, but this time, Mail hung up with the spinning beachball and I eventually had to force quit Mail. Since that time Mail has taken minutes to load and runs slowly. I have trashed caches, repaired permissions and repaired the disk. Talked to Apple Support for 30 minutes or so this morning and tried all the stuff they suggested.
    Now Apple Support is suggesting archive and reinstall.
    My questions are:
    1. Does anyone here have an idea to try?
    2. Any thing to look out for on archive and reinstall if it comes to that?
    Thanks,
    Bob Crites

    As a more convenient alternative to a full Archive and Install, you may try reinstalling just the Combo Update for the type of computer and the version of Mac OS X you’re using, unless this is the version of Mac OS X that came with the computer:
    About the Mac OS X 10.4.8 Combo Update
    Mac OS X 10.4.8 Combo Update for PPC
    Mac OS X 10.4.8 Combo Update for Intel
    Take a look at the following articles for guidelines on how to properly install system updates:
    Troubleshooting installation and software updates
    Installing software updates
    Basically, you should verify/repair the startup disk before installing the update, no applications should be running while installing it, and you may experience unexpected results if you have third-party system software modifications (not normal applications) installed.

  • My MAC Mini requires reentering password after an unspecified time and running programs are interrupted

    My MAC Mini at unspecified times switches to require reentering the password  and running programs are interrupted.
    I do not find a way in Preferences to correct this.  Software  OS X 10.9.5 (13F34)

    From the menu bar, select
               ▹ System Preferences... ▹ Security & Privacy
    If there's a closed padlock icon in the lower left corner of the preference pane, click it and enter your login password when prompted.
    Click the Advanced button and, in the sheet that opens, uncheck the box marked
              Log out after … minutes of inactivity

  • Unable to load Cell Text (Memo A/c) from FDM to HFM..?

    Hi All,
    I am unable to load Cell Text (Memo a/c) from FDM to HFM. We use Import>validate>export function and use Upsload fucntion in the file to import the data. No errors are shown whilst loading the file and everything gets load except these Memo accounts The issue never arose when we were on version 11.1.1.3. We have recently migrated to 11.1.2.1. I have also checked Application Integration Settings where Cell Text is ticked as enabled.
    Can someone help please..
    Thanks,
    Maneesh

    Hi All,
    I am unable to load Cell Text (Memo a/c) from FDM to HFM. We use Import>validate>export function and use Upsload fucntion in the file to import the data. No errors are shown whilst loading the file and everything gets load except these Memo accounts The issue never arose when we were on version 11.1.1.3. We have recently migrated to 11.1.2.1. I have also checked Application Integration Settings where Cell Text is ticked as enabled.
    Can someone help please..
    Thanks,
    Maneesh

  • I am concidering buying an ipad but am concerned that I wont be able to load and run a windows based program. Can I and how would I?

    Can you advise/

    Take a look at LogMeIn Ignition. You would need to install LogMeIn on your PC and then purchase the iPad app ($30). Both PC and iPad would need to be connected to the Internet, but could be remote. You should then be able to see and run NurseSquared on your PC from the iPad. Check with the developer of NurseSquared.

Maybe you are looking for