- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello All,
I have problem when I debug a project based on stratixIII_3sl150. (Quartus 9.0, Nios II 9.0) The execution of my program (c/c++) in visual studio is fine and its build in niosII is fine. When i launch the debug in niosII, the project starts give results but it is suspended without finish the execution of the program. It mentions: - Thread [0] (Suspended: Signal 'SIGTRAP' received. Description:Trace/breakpoint trap.) 1 <symbol is not available> 0x080000a0 Please any help. Thanks.Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Maybe you have a watchdog that resets your hardware and takes the program from flash, which may be different.
Perhaps a memory leak, buffer overflow, out of memory... Have you succeeded with "run as" ?- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you,
I don't interstend what is "a watchdog" can you please explain more. With "Run as" the project also suspended. Please have you an idea how detect memory leak, buffer overflow and out of memory with niosII? I was used "Valgrind" the open source framework (linux) that can automatically detect many memory management and threading bugs, and profile programs. It mentions: ==12709== LEAK SUMMARY: ==12709== definitely lost: 331,376,596 bytes in 11,421 blocks ==12709== indirectly lost: 1,254,632 bytes in 5,131 blocks ==12709== possibly lost: 32,673,808 bytes in 10,567 blocks ==12709== still reachable: 0 bytes in 0 blocks ==12709== suppressed: 0 bytes in 0 blocks ==12709== ERROR SUMMARY: 3257 errors from 86 contexts (suppressed: 0 from 0) I don't know if these errors are the cause of my problem or not and also how correct it? Please have you any idea? waiting for your reply and best wishes to you, thank you.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A watchdog is a component (outside or inside FPGA) that reset the board after a specified timeout. It must be regulary cleared by a function in the embedded software to prevent reset.
By this way, if a "bug" occure and hangs the program, after the watchdog timeout, your system is restarted and "continue" to work. I don't use any software to analyse the code to detect memory leak, buffer overflow... since NIOS II is not an usual environment (like Unix) : the memory is determined by Qsys/sopc. I advice to write a good code : I know how much memory takes a structure, write interrupt routines short as possible, non blocking functions... Why do you use Visual Studio. why don't you use the Eclipse NIOS II SBT supplied with QUARTUS ? Some versions of Visual Studio does NOT respect C standard (one developer has to write numeral# IFDEF to write code specially to Visual Studio).- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you very much for your help

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page