Hi, I'm using VisualDSP (ADSP21061). When I'm in the debugger, I'm getting a MEMORY ADDRESS ERROR Address out of memory range (40000|-4ffff|) when I try to goto short word memory address 0x600000. The debugger memory map shows the segment in question, and the goto/browse window shows the variable in question. Is this some limitation on the debugger's part? How would I work around this? My very unimaginative .ldf looks like: MEMORY { seg_rth { TYPE(PM RAM) START(0x00020000) END(0x000200ff) WIDTH(48) } seg_init { TYPE(PM RAM) START(0x00020100) END(0x0002010f) WIDTH(48) } seg_pmco { TYPE(PM RAM) START(0x00020110) END(0x00021fff) WIDTH(48) } seg_dmda { TYPE(DM RAM) START(0x00023000) END(0x00023fff) WIDTH(32) } seg_pmco { TYPE(PM RAM) START(0x00024000) END(0x00025fff) WIDTH(48) } seg_dmda { TYPE(DM RAM) START(0x00027000) END(0x00027dff) WIDTH(32) } seg_heap { TYPE(DM RAM) START(0x00027e00) END(0x00027eff) WIDTH(32) } seg_stak { TYPE(DM RAM) START(0x00027f00) END(0x00027fff) WIDTH(32) } seg_boot { TYPE(PM RAM) START(0x00400000) END(0x00401fff) WIDTH(16) } seg_flash { TYPE(PM RAM) START(0x00402000) END(0x0043afff) WIDTH(16) } seg_fpga_code { TYPE(DM RAM) START(0x0043b000) END(0x0043ffff) WIDTH(16) } seg_sram { TYPE(DM RAM) START(0x00500000) END(0x0053ffff) WIDTH(48) } seg_dpram_write { TYPE(DM RAM) START(0x00600000) END(0x006003ff) WIDTH(16) } seg_dpram_read { TYPE(DM RAM) START(0x00600400) END(0x006007ff) WIDTH(16) } seg_fpga_regs { TYPE(DM PORT) START(0x00700000) END(0x0070002f) WIDTH(16) } seg_unbanked { TYPE(DM PORT) START(0x00800000) END(0x00800000) WIDTH(16) } } PROCESSOR p0 { LINK_AGAINST( $COMMAND_LINE_LINK_AGAINST) OUTPUT( $COMMAND_LINE_OUTPUT_FILE ) SECTIONS { // .text output section seg_rth { INPUT_SECTIONS( $OBJECTS(seg_rth) $LIBRARIES(seg_rth)) } >seg_rth seg_init { INPUT_SECTIONS( $OBJECTS(seg_init) $LIBRARIES(seg_init)) } >seg_init seg_pmco { INPUT_SECTIONS( $OBJECTS(seg_pmco) $LIBRARIES(seg_pmco)) } >seg_pmco seg_dmda { INPUT_SECTIONS( $OBJECTS(seg_dmda) $LIBRARIES(seg_dmda)) } > seg_dmda stackseg { // allocate a stack for the application ldf_stack_space = .; ldf_stack_length = MEMORY_SIZEOF(seg_stak); } > seg_stak heap { // allocate a heap for the application ldf_heap_space = .; ldf_heap_end = ldf_heap_space + MEMORY_SIZEOF(seg_heap) - 1; ldf_heap_length = ldf_heap_end - ldf_heap_space; } > seg_heap seg_boot { INPUT_SECTIONS( $OBJECTS(seg_boot) $LIBRARIES(seg_boot)) } >seg_boot seg_fpga_code { INPUT_SECTIONS( $OBJECTS(seg_fpga_code) $LIBRARIES(seg_fpga_code)) } >seg_fpga_code seg_sram { INPUT_SECTIONS( $OBJECTS(seg_sram) $LIBRARIES(seg_sram)) } >seg_sram seg_dpram_write { INPUT_SECTIONS( $OBJECTS(seg_dpram_write) $LIBRARIES(seg_dpram_write)) } >seg_dpram_write seg_dpram_read { INPUT_SECTIONS( $OBJECTS(seg_dpram_read) $LIBRARIES(seg_dpram_read)) } >seg_dpram_read seg_fpga_regs { INPUT_SECTIONS( $OBJECTS(seg_fpga_regs) $LIBRARIES(seg_fpga_regs)) } >seg_fpga_regs seg_unbanked { INPUT_SECTIONS( $OBJECTS(seg_unbanked) $LIBRARIES(seg_unbanked)) } >seg_unbanked } |
|
VisualDSP ! Debugger ! MEMORY ADDRESS ERROR
Started by ●September 19, 2000
Reply by ●September 20, 20002000-09-20
On Tue, 19 Sep 2000 14:48:32 -0700, wrote: > I'm using VisualDSP (ADSP21061). When I'm in the debugger, I'm getting a > > MEMORY ADDRESS ERROR > Address out of memory range (40000|-4ffff|) > > when I try to goto short word memory address 0x600000. Do you have the latest service pack (SP3) installed? Have you submitted the bug to ADI? Tell them which ICE you're using and what target setup you have configured. Try to provide a tiny executable with just the variable in question and a simple recipe for how to trigger the error. Kenneth Porter Kensington Laboratories, Inc. mailto: http://www.kensingtonlabs.com |