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

📄 adsp-ts101-mp_asm.ldf

📁 2005 Center for Biological & Computational Learning at MIT and MIT All rights reserved. Permissio
💻 LDF
字号:
// PLease note that this is a modified version from the original LDF provided with the tools.

/*---------------------------------------------------------------------------------

	Introduction to TigerSHARC Multiprocessing Systems Using VisualDSP++
	Maikel K.B., DSP-Europe 
	June 2002

	ADSP-TS101_ASM.LDF
	
	This is an example of an LDF file for MP Systems in TigerSHARC. Relevant MP commands are:

	MPMEMORY{} 		- specifies the offset of each processor抯 physical memory in your target multiprocessor system.

	SHARED_MEMORY{}	- describes the shared memory of a multiprocessor system. It outputs the Shared Memory files (.SM)

	PROCESSOR{}		- declares the processors present in the system as well as the processors that share the memory

	LINK_AGAINST() 	- command directs the linker to check specified executables (.DXEs and .SMs) to resolve variables 
				   	and labels that have not been resolved locally.

	OUTPUT()		- selects the output file name for the processors and shared memory executable files

------------------------------------------------------------------------------------------------------*/


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
{
    M0Code      { TYPE(RAM) START(0x00000000) 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) }
    MS0         { TYPE(RAM) START(0x08000000) END(0x0BFFFFFF) WIDTH(32) }
    MS1         { TYPE(RAM) START(0x0C000000) END(0x0FFFFFFF) WIDTH(32) }
//  HOST        { TYPE(RAM) START(0x10000000) END(0xFFFFFFFF) WIDTH(32) }
}

//Declare  Multiprocessor Memory Space (MMS) offset values for processors ID0 and ID1

MPMEMORY
{
	ID0 { START(0x2000000) }			// MMS offset value for DSP with ID0
	ID1 { START(0x2400000) }			// MMS offset value for DSP with ID1
}

//Declare external 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( data.doj(ext_data) )
		} >SDRAM
	}
}
*/

// Processor ID0 sections definition

PROCESSOR ID0	
{
    	
	LINK_AGAINST(/*shared.sm,*/ ID1.dxe)		// Resolves symbols within Multiprocessor Memory 
											// In this case, ID1 and Shared Memory
	OUTPUT(ID0.dxe)							// Executable generated for ID0

    SECTIONS
    {
        code
        {
		    FILL(0xb3c00000)
	    	INPUT_SECTION_ALIGN(4)	    
        	INPUT_SECTIONS(  ID0.doj(program))
        } >M0Code	// Code placed in Memory Bank 0

        data1
        {
            INPUT_SECTIONS( ID0.doj(data1))
        } >M1Data	// Data1 placed in Memory Bank 1

        data2
        {
            INPUT_SECTIONS( ID0.doj(data2))
        } >M2Data	// Data2 placed in Memory Bank 1
    }
}

// Processor ID1 sections definition

PROCESSOR ID1	
{
	LINK_AGAINST(/*shared.sm,*/ ID0.dxe)	// Resolves symbols within Multiprocessor Memory. 
									 	// In this case, DSP_1 and Shared Memory.	
	OUTPUT(ID1.dxe)						// Executable generated for ID1

    SECTIONS
    {
        code
        {
            FILL(0xb3c00000)
		    INPUT_SECTION_ALIGN(4)	    
            INPUT_SECTIONS(  ID1.doj(program))
        } >M0Code	// Code placed in Memory Bank 0

        data1
        {
            INPUT_SECTIONS( ID1.doj(data1))
        } >M1Data	// Data1 placed in Memory Bank 1

        data2
        {
            INPUT_SECTIONS( ID1.doj(data2))
        } >M2Data	// Data2 placed in Memory Bank 2
    }
}


⌨️ 快捷键说明

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