双片ADSP-21160系统的程序加载设计
}
//以下是对多片(ID1 和ID2)映射空间说明
MPMEMORY
{ ID1 { START(0x00100000) } //第一片映射到0x00100000
ID2 { START(0x00200000) } //第一片映射到0x00200000
}
下是对共享的外部存储区的声明,比如外挂的SRAM等器件的存储空间
{ OUTPUT(shared.sm)
SECTIONS
{ dxe_dmex
{ INPUT_SECTIONS( shared.doj(sram_da) )
} >mem_dmex
}
}
PROCESSOR ID1 //处理器 ID1 的段定义.
{ LINK_AGAINST(ID2.dxe)
OUTPUT(ID1.dxe)
SECTIONS
{ dxe_rth
{ INPUT_SECTIONS( ID1.doj(seg_rth) $LIBRARIES(seg_rth))
} >mem_rth
dxe_pmco
{ INPUT_SECTIONS( ID1.doj(s
eg_pmco) $LIBRARIES(seg_pmco))
} >mem_pmco
dxe_pmda
{ INPUT_SECTIONS( ID1.doj(seg_pmda) $LIBRARIES(seg_pmda))
} >mem_pmda
dxe_dmda
{ INPUT_SECTIONS( ID1.doj(seg_dmda) $LIBRARIES(seg_dmda))
} >mem_dmda
}
}
PROCESSOR ID2 //处理器 ID2 的段定义
{
LINK_AGAINST(ID1.dxe)
OUTPUT(ID2.dxe)
SECTIONS
{ dxe_rth
{INPUT_SECTIONS( ID2.doj(seg_rth) $LIBRARIES(seg_rth))
} >mem_rth
dxe_pmco
{ INPUT_SECTIONS( ID2.doj(seg_pmco) $LIBRARIES(seg_pmco))
} >mem_pmco
dxe_pmda
{INPUT_SECTIONS( ID2.doj(seg_pmda) $LIBRARIES(seg_pmda))
} >mem_pmda
dxe_dmda
{INPUT_SECTIONS( ID2.doj(seg_dmda) $LIBRARIES(seg_dmda))
} >mem_dmda
}
}
通过以上的定义,就实现了在一个LDF文件中声明了两片AD21160的存储空间,以及多片存储区映射(MMS),和共享片外存储区。
3. 烧写双片SHARC的流程实例
新建一个工程,采用以上的LDF文件声明。
然后编写两个.asm文件:ID1.asm,ID2.