打印

谁能帮我解释下这段.cmd的代码?谢谢。

[复制链接]
1719|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Windmill_CN|  楼主 | 2012-4-13 10:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*************************************************************************
* $RCSfile: Link.cmd,v $
* $Revision: 1.3 $
* $Date: 2001/04/19 18:56:50 $
* Copyright (c) 2001 Texas Instruments Incorporated
*
* Description:
*       This file is used to link 55x FBTC for FlashBurn.
*       Use it as a guideline; you  may want to change the
*       allocation scheme according to the size of your program
*       and the memory layout of your target system.
*
*************************************************************************/
-c
-stack 0x0256
/* SPECIFY THE SYSTEM MEMORY MAP                                     */
/* - Loader/Linker only uses Byte-addresses.       */
MEMORY
{
DARAM (RWIX)    : o=00000C0h, l=000FF40h
SARAM (RWIX) : o=0010000h, l=0040000h
CE0 (RWIX)  : o=0050000h, l=03B0000h
CE1 (RWIX)  : o=0400000h, l=0400000h
CE2 (RWIX)  : o=0800000h, l=0400000h
CE3 (RWIX)  : o=0C00000h, l=03F8000h
DROM(RX)  : o=0FF8000h, l=0008000h
}
/* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY                       */
SECTIONS
{
/* The power-up vector location is NOT writable.     */
/* - So vectors must be loaded at a different address.    */
.text       > SARAM   /* CODE                  */
    .switch     > SARAM   /* SWITCH TABLE INFO      */
    .const      > SARAM   /* CONSTANT DATA         */
    .cinit      > SARAM   /* INITIALIZATION TABLES     */
    .pinit      > SARAM   /* INITIALIZATION TABLES     */
    .data       > DARAM fill=0xBEEF /* INITIALIZED DATA     */
    .bss        > DARAM fill=0xBEEF /* GLOBAL & STATIC VARS     */
    .sysmem     > DARAM fill=0xBEEF /* DYNAMIC MALLOC AREA     */
    .stack      > DARAM fill=0xBEEF /* PRIMARY SYSTEM STACK     */
    .cio        > DARAM fill=0xBEEF
}

相关帖子

沙发
xueqi_147| | 2012-11-26 22:42 | 只看该作者
-c  要求运行时初始化定义的变量
-stack 0x0256 堆栈大小设为0x56大小
MEMORY
{
DARAM (RWIX)    : o=00000C0h, l=000FF40h
SARAM (RWIX) : o=0010000h, l=0040000h
CE0 (RWIX)  : o=0050000h, l=03B0000h
CE1 (RWIX)  : o=0400000h, l=0400000h
CE2 (RWIX)  : o=0800000h, l=0400000h
CE3 (RWIX)  : o=0C00000h, l=03F8000h
DROM(RX)  : o=0FF8000h, l=0008000h
}
内存划分为这几块
DARAM (RWIX)    : o=00000C0h, l=000FF40h
名字 起始地址 内存长度 RWIX为这块内存的属性,读写执行 I不知道

SECTIONS
{
/* The power-up vector location is NOT writable.     */
/* - So vectors must be loaded at a different address.    */
.text       > SARAM   /* CODE                  */
    .switch     > SARAM   /* SWITCH TABLE INFO      */
    .const      > SARAM   /* CONSTANT DATA         */
    .cinit      > SARAM   /* INITIALIZATION TABLES     */
    .pinit      > SARAM   /* INITIALIZATION TABLES     */
    .data       > DARAM fill=0xBEEF /* INITIALIZED DATA     */
    .bss        > DARAM fill=0xBEEF /* GLOBAL & STATIC VARS     */
    .sysmem     > DARAM fill=0xBEEF /* DYNAMIC MALLOC AREA     */
    .stack      > DARAM fill=0xBEEF /* PRIMARY SYSTEM STACK     */
    .cio        > DARAM fill=0xBEEF
}
DSP程序是分段结构的,指定什么段放在哪一块内存

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

454

帖子

1

粉丝