⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adsp-ts101_mp_asm.ldf

📁 TS101 DMA演示程序,包括链路口DMA,二维DMA
💻 LDF
字号:
ARCHITECTURE(ADSP-TS101)

SEARCH_DIR( $ADI_DSP\TS\lib )

// Libraries from the command line are included in COMMAND_LINE_OBJECTS.
$OBJECTS = $COMMAND_LINE_OBJECTS;

// Internal memory blocks are 0x10000 (64k)


MEMORY
{
    Reset	{ TYPE(RAM) START(0x00000000) END(0x000000FF) WIDTH(32) }
	M0Code	{ TYPE(RAM) START(0x00000100) END(0x0000FFFF) WIDTH(32) }
    M1Data	{ TYPE(RAM) START(0x00080000) END(0x0008FFFF) WIDTH(32) }
    M2Data	{ TYPE(RAM) START(0x00100000) END(0x0010FFFF) WIDTH(32) }
	SDRAM   { TYPE(RAM) START(0x04000000) END(0x07FFFFFF) WIDTH(32) }
	   // Memory blocks need to be less than 2 Gig.
    HOST        { TYPE(RAM) START(0x10000000) END(0x2FFFFFFF) WIDTH(32) }
    HOST1       { TYPE(RAM) START(0x30000000) END(0x4FFFFFFF) WIDTH(32) }
    HOST2       { TYPE(RAM) START(0x50000000) END(0x6FFFFFFF) WIDTH(32) }
    HOST3       { TYPE(RAM) START(0x70000000) END(0x8FFFFFFF) WIDTH(32) }
    HOST4       { TYPE(RAM) START(0x90000000) END(0xAFFFFFFF) WIDTH(32) }
    HOST5       { TYPE(RAM) START(0xB0000000) END(0xCFFFFFFF) WIDTH(32) }
    HOST6       { TYPE(RAM) START(0xD0000000) END(0xEFFFFFFF) WIDTH(32) }
    HOST7       { TYPE(RAM) START(0xF0000000) END(0xFFFFFFFF) WIDTH(32) }
}


// Offset value for each DSP - Corresponds to each DSP's address in the MMS //
MPMEMORY
{
	p0 { START(0x2000000) }			// Offset value for DSP with ID_0
	p1 { START(0x2400000) }			// Offset value for DSP with ID_1
}

//Declare shared memory
SHARED_MEMORY
{
	OUTPUT(shared.sm)       // .SM file is used by the linker to resolve (LINK_AGAINST) the absolute addresses of shared memory symbols

	SECTIONS
	{
		ext_mem
		{
			INPUT_SECTIONS( shared.doj(ext_data))
		} >SDRAM
	}
}


PROCESSOR p0
{
  
	LINK_AGAINST(shared.sm, ext_mem_to_link_rx.dxe)  // Resolves symbols within Multiprocessor Memory (in this case: DSP_1 and Shared Memory)
	OUTPUT(ext_mem_to_link_tx.dxe)					 // Executable generated for DSP_0

    SECTIONS
    {
	    reset
        {
            FILL(0xb3c00000)
			INPUT_SECTION_ALIGN(4)	  
			INPUT_SECTIONS( ext_mem_to_link_tx.doj(reset))
        } >Reset
    
		
		code
        {
               
            INPUT_SECTIONS( ext_mem_to_link_tx.doj(program))
        } >M0Code

        data1
        {
            INPUT_SECTIONS(  ext_mem_to_link_tx.doj(data1))
        } >M1Data

        data2
        {
            INPUT_SECTIONS(  ext_mem_to_link_tx.doj(data2))
        } >M2Data

		ext_mem
		{
			INPUT_SECTIONS( ext_mem_to_link_tx.doj(ext_data) )
		} >SDRAM

    }
}

PROCESSOR p1
{
    	
	LINK_AGAINST(shared.sm, ext_mem_to_link_tx.dxe)		// Resolves symbols within Multiprocessor Memory (in this case: DSP_0 and Shared Memory)
	OUTPUT(ext_mem_to_link_rx.dxe)						// Executable generated for DSP_0

    SECTIONS
    {
        reset
        {
            FILL(0xb3c00000)
			INPUT_SECTION_ALIGN(4)	  
			INPUT_SECTIONS( ext_mem_to_link_rx.doj(reset))
        } >Reset
	
	   	code
        {
           
	        INPUT_SECTIONS(  ext_mem_to_link_rx.doj(program))
        } >M0Code

        data1
        {
            INPUT_SECTIONS( ext_mem_to_link_rx.doj(data1))
        } >M1Data

        data2
        {
            INPUT_SECTIONS( ext_mem_to_link_rx.doj(data2))
        } >M2Data

		ext_mem
		{
			INPUT_SECTIONS( ext_mem_to_link_rx.doj(ext_data) )
		} >SDRAM

    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -