📄 talkthrough_tdm_c.ldf
字号:
L1_data_a { INPUT_SECTION_ALIGN(4) ___l1_data_cache_a = 0; INPUT_SECTIONS($OBJECTS_CORE_A(L1_data_a) $LIBRARIES_CORE_A(L1_data_a)) /*$VDSG<insert-input-sections-at-the-start-of-l1_data_a> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-start-of-l1_data_a> */ RESERVE(heaps_and_stack_in_L1_data_a, heaps_and_stack_in_L1_data_a_length = 2K,4) INPUT_SECTIONS($OBJECTS_CORE_A{DualCoreMem("CoreA")}(cplb_data) $LIBRARIES_CORE_A{DualCoreMem("CoreA")}(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_A(cplb_data) $LIBRARIES_CORE_A(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_A(voldata) $LIBRARIES_CORE_A(voldata)) INPUT_SECTIONS($OBJECTS_CORE_A(constdata) $LIBRARIES_CORE_A(constdata)) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(data1)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(data1)) INPUT_SECTIONS($OBJECTS_CORE_A(data1) $LIBRARIES_CORE_A(data1)) INPUT_SECTIONS($OBJECTS_CORE_A(.edt) $LIBRARIES_CORE_A(.edt)) INPUT_SECTIONS($OBJECTS_CORE_A(.cht) $LIBRARIES_CORE_A(.cht)) /*$VDSG<insert-input-sections-at-the-end-of-l1_data_a> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-end-of-l1_data_a> */ } > MEM_A_L1_DATA_A bsz_L1_data_a ZERO_INIT { INPUT_SECTION_ALIGN(4) INPUT_SECTIONS($OBJECTS_CORE_A(bsz) $LIBRARIES_CORE_A(bsz)) } > MEM_A_L1_DATA_A L1_data_a_stack_heap { INPUT_SECTION_ALIGN(4) RESERVE_EXPAND(heaps_and_stack_in_L1_data_a, heaps_and_stack_in_L1_data_a_length , 0, 4) ldf_heap_space = heaps_and_stack_in_L1_data_a; ldf_heap_end = (ldf_heap_space + (((heaps_and_stack_in_L1_data_a_length * 2K) / 2K) - 4)) & 0xfffffffc; ldf_heap_length = ldf_heap_end - ldf_heap_space; } > MEM_A_L1_DATA_A L1_data_b { INPUT_SECTION_ALIGN(4) ___l1_data_cache_b = 0; INPUT_SECTIONS($OBJECTS_CORE_A(L1_data_b) $LIBRARIES_CORE_A(L1_data_b)) /*$VDSG<insert-input-sections-at-the-start-of-l1_data_b> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-start-of-l1_data_b> */ RESERVE(heaps_and_stack_in_L1_data_b, heaps_and_stack_in_L1_data_b_length = 2K,4) INPUT_SECTIONS($OBJECTS_CORE_A(ctor) $LIBRARIES_CORE_A(ctor)) INPUT_SECTIONS($OBJECTS_CORE_A(ctorl) $LIBRARIES_CORE_A(ctorl)) INPUT_SECTIONS($OBJECTS_CORE_A(vtbl) $LIBRARIES_CORE_A(vtbl)) INPUT_SECTIONS($OBJECTS_CORE_A(.frt) $LIBRARIES_CORE_A(.frt)) INPUT_SECTIONS($OBJECTS_CORE_A(.rtti) $LIBRARIES_CORE_A(.rtti)) INPUT_SECTIONS($OBJECTS_CORE_A(.edt) $LIBRARIES_CORE_A(.edt)) INPUT_SECTIONS($OBJECTS_CORE_A(.cht) $LIBRARIES_CORE_A(.cht)) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(data1)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(data1)) INPUT_SECTIONS($OBJECTS_CORE_A(data1) $LIBRARIES_CORE_A(data1)) INPUT_SECTIONS($OBJECTS_CORE_A{DualCoreMem("CoreA")}(cplb_data) $LIBRARIES_CORE_A{DualCoreMem("CoreA")}(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_A(cplb_data) $LIBRARIES_CORE_A(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_A(voldata) $LIBRARIES_CORE_A(voldata)) INPUT_SECTIONS($OBJECTS_CORE_A(constdata) $LIBRARIES_CORE_A(constdata)) /*$VDSG<insert-input-sections-at-the-end-of-l1_data_b> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-end-of-l1_data_b> */ } > MEM_A_L1_DATA_B bsz_L1_data_b ZERO_INIT { INPUT_SECTION_ALIGN(4) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(bsz)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(bsz)) INPUT_SECTIONS($OBJECTS_CORE_A(bsz) $LIBRARIES_CORE_A(bsz)) } > MEM_A_L1_DATA_B L1_data_b_stack_heap { INPUT_SECTION_ALIGN(4) RESERVE_EXPAND(heaps_and_stack_in_L1_data_b, heaps_and_stack_in_L1_data_b_length , 0, 4) ldf_stack_space = heaps_and_stack_in_L1_data_b; ldf_stack_end = (ldf_stack_space + (((heaps_and_stack_in_L1_data_b_length * 2K) / 2K) - 4)) & 0xfffffffc; } > MEM_A_L1_DATA_B /*$VDSG<insert-new-sections-at-the-end-for-CORE-A> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-new-sections-at-the-end-for-CORE-A> */ p0_gdt { INPUT_SECTIONS($OBJECTS_CORE_A(.gdt) $LIBRARIES_CORE_A(.gdt)) INPUT_SECTIONS($LIBRARIES_SML3_CM(.gdt)) INPUT_SECTIONS($LIBRARIES_SML2_CM(.gdt)) INPUT_SECTIONS($OBJECTS_CORE_A(.gdtl) $LIBRARIES_CORE_A(.gdtl)) INPUT_SECTIONS($LIBRARIES_SML3_CM(.gdtl)) INPUT_SECTIONS($LIBRARIES_SML2_CM(.gdtl)) } > MEM_SDRAM_BANK1 } /* SECTIONS */} /* p0 */PROCESSOR p1{ MEMORY { MEM_B_L1_SCRATCH { TYPE(RAM) START(0xFF700000) END(0xFF700FFF) WIDTH(8) } MEM_B_L1_CODE { TYPE(RAM) START(0xFF600000) END(0xFF603FFF) WIDTH(8) } MEM_B_L1_DATA_B { TYPE(RAM) START(0xFF500000) END(0xFF507FFF) WIDTH(8) } MEM_B_L1_DATA_A { TYPE(RAM) START(0xFF400000) END(0xFF407FFF) WIDTH(8) } /*$VDSG<insert-new-memory-segments-for-CORE-B> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-new-memory-segments-for-CORE-B> */ } /* MEMORY */ OUTPUT($COMMAND_LINE_OUTPUT_DIRECTORY/p1.dxe) RESOLVE(start, 0xFF600000) KEEP(start,_main) /*$VDSG<insert-user-ldf-commands-for-CORE-B> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-user-ldf-commands-for-CORE-B> */ SECTIONS { /*$VDSG<insert-new-sections-at-the-start-for-CORE-B> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-new-sections-at-the-start-for-CORE-B> */ scratchpad { INPUT_SECTION_ALIGN(4) /*$VDSG<insert-input-sections-at-the-start-of-scratchpad-for-CORE-B> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-start-of-scratchpad-for-CORE-B> */ } > MEM_B_L1_SCRATCH L1_code { INPUT_SECTION_ALIGN(4) __CORE = 1; INPUT_SECTIONS($OBJECTS_CORE_B(L1_code) $LIBRARIES_CORE_B(L1_code)) /*$VDSG<insert-input-sections-at-the-start-of-l1_code_coreB> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-start-of-l1_code_coreB> */ INPUT_SECTIONS($OBJECTS_CORE_B(VDK_ISR_code) $LIBRARIES_CORE_B(VDK_ISR_code)) INPUT_SECTIONS($OBJECTS_CORE_B(cplb) $LIBRARIES_CORE_B(cplb)) INPUT_SECTIONS($OBJECTS_CORE_B(cplb_code) $LIBRARIES_CORE_B(cplb_code)) INPUT_SECTIONS($OBJECTS_CORE_B(noncache_code) $LIBRARIES_CORE_B(noncache_code)) INPUT_SECTIONS($OBJECTS_CORE_B(program) $LIBRARIES_CORE_B(program)) /*$VDSG<insert-input-sections-at-the-end-of-l1_code_coreB> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-end-of-l1_code_coreB> */ } > MEM_B_L1_CODE L1_data_a { INPUT_SECTION_ALIGN(4) ___l1_data_cache_a = 0; INPUT_SECTIONS($OBJECTS_CORE_B(L1_data_a) $LIBRARIES_CORE_B(L1_data_a)) /*$VDSG<insert-input-sections-at-the-start-of-l1_data_a_coreB> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-start-of-l1_data_a_coreB> */ RESERVE(heaps_and_stack_in_L1_data_a, heaps_and_stack_in_L1_data_a_length = 2K,4) INPUT_SECTIONS($OBJECTS_CORE_B{DualCoreMem("CoreB")}(cplb_data) $LIBRARIES_CORE_B{DualCoreMem("CoreB")}(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_B(cplb_data) $LIBRARIES_CORE_B(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_B(voldata) $LIBRARIES_CORE_B(voldata)) INPUT_SECTIONS($OBJECTS_CORE_B(constdata) $LIBRARIES_CORE_B(constdata)) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_B(data1)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_B(data1)) INPUT_SECTIONS($OBJECTS_CORE_B(data1) $LIBRARIES_CORE_B(data1)) INPUT_SECTIONS($OBJECTS_CORE_B(.edt) $LIBRARIES_CORE_B(.edt)) INPUT_SECTIONS($OBJECTS_CORE_B(.cht) $LIBRARIES_CORE_B(.cht)) /*$VDSG<insert-input-sections-at-the-end-of-l1_data_a_coreB> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-end-of-l1_data_a_coreB> */ } > MEM_B_L1_DATA_A bsz_L1_data_a ZERO_INIT { INPUT_SECTION_ALIGN(4) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_B(bsz)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_B(bsz)) INPUT_SECTIONS($OBJECTS_CORE_B(bsz) $LIBRARIES_CORE_B(bsz)) } > MEM_B_L1_DATA_A L1_data_a_stack_heap { INPUT_SECTION_ALIGN(4) RESERVE_EXPAND(heaps_and_stack_in_L1_data_a, heaps_and_stack_in_L1_data_a_length , 0, 4) ldf_heap_space = heaps_and_stack_in_L1_data_a; ldf_heap_end = (ldf_heap_space + (((heaps_and_stack_in_L1_data_a_length * 2K) / 2K) - 4)) & 0xfffffffc; ldf_heap_length = ldf_heap_end - ldf_heap_space; } > MEM_B_L1_DATA_A L1_data_b { INPUT_SECTION_ALIGN(4) ___l1_data_cache_b = 0; INPUT_SECTIONS($OBJECTS_CORE_B(L1_data_b) $LIBRARIES_CORE_B(L1_data_b)) /*$VDSG<insert-input-sections-at-the-start-of-l1_data_b_coreB> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-start-of-l1_data_b_coreB> */ RESERVE(heaps_and_stack_in_L1_data_b, heaps_and_stack_in_L1_data_b_length = 2K,4) INPUT_SECTIONS($OBJECTS_CORE_B(ctor) $LIBRARIES_CORE_B(ctor)) INPUT_SECTIONS($OBJECTS_CORE_B(ctorl) $LIBRARIES_CORE_B(ctorl)) INPUT_SECTIONS($OBJECTS_CORE_B(vtbl) $LIBRARIES_CORE_B(vtbl)) INPUT_SECTIONS($OBJECTS_CORE_B(.frt) $LIBRARIES_CORE_B(.frt)) INPUT_SECTIONS($OBJECTS_CORE_B(.rtti) $LIBRARIES_CORE_B(.rtti)) INPUT_SECTIONS($OBJECTS_CORE_B(.edt) $LIBRARIES_CORE_B(.edt)) INPUT_SECTIONS($OBJECTS_CORE_B(.cht) $LIBRARIES_CORE_B(.cht)) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_B(data1)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_B(data1)) INPUT_SECTIONS($OBJECTS_CORE_B(data1) $LIBRARIES_CORE_B(data1)) INPUT_SECTIONS($OBJECTS_CORE_B{DualCoreMem("CoreB")}(cplb_data) $LIBRARIES_CORE_B{DualCoreMem("CoreB")}(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_B(cplb_data) $LIBRARIES_CORE_B(cplb_data)) INPUT_SECTIONS($OBJECTS_CORE_B(voldata) $LIBRARIES_CORE_B(voldata)) INPUT_SECTIONS($OBJECTS_CORE_B(constdata) $LIBRARIES_CORE_B(constdata)) /*$VDSG<insert-input-sections-at-the-end-of-l1_data_b_coreB> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-input-sections-at-the-end-of-l1_data_b_coreB> */ } > MEM_B_L1_DATA_B bsz_L1_data_b ZERO_INIT { INPUT_SECTION_ALIGN(4) INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_B(bsz)) INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_B(bsz)) INPUT_SECTIONS($OBJECTS_CORE_B(bsz) $LIBRARIES_CORE_B(bsz)) } > MEM_B_L1_DATA_B L1_data_b_stack_heap { INPUT_SECTION_ALIGN(4) RESERVE_EXPAND(heaps_and_stack_in_L1_data_b, heaps_and_stack_in_L1_data_b_length , 0, 4) ldf_stack_space = heaps_and_stack_in_L1_data_b; ldf_stack_end = (ldf_stack_space + (((heaps_and_stack_in_L1_data_b_length * 2K) / 2K) - 4)) & 0xfffffffc; } > MEM_B_L1_DATA_B /*$VDSG<insert-new-sections-at-the-end-for-CORE-B> */ /* Text inserted between these $VDSG comments will be preserved */ /*$VDSG<insert-new-sections-at-the-end-for-CORE-B> */ p1_gdt { INPUT_SECTIONS($OBJECTS_CORE_B(.gdt) $LIBRARIES_CORE_B(.gdt)) INPUT_SECTIONS($LIBRARIES_SML3_CM(.gdt)) INPUT_SECTIONS($LIBRARIES_SML2_CM(.gdt)) INPUT_SECTIONS($OBJECTS_CORE_B(.gdtl) $LIBRARIES_CORE_B(.gdtl)) INPUT_SECTIONS($LIBRARIES_SML3_CM(.gdtl)) INPUT_SECTIONS($LIBRARIES_SML2_CM(.gdtl)) } > MEM_SDRAM_BANK1 } /* SECTIONS */} /* p1 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -