您的位置: OpenADSP社区论坛 -> SHARC/TigerSHARC专区 -> 新手上路 -> 修改21375的LDF时候报错
本帖共有687个阅读者
发表帖子 发表投票 回复主题
修改21375的LDF时候报错
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5187
金钱:34761
积分:6369
注册时间:2011/6/7
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
修改21375的LDF时候报错
问:

想要在21375上面用sigmastudio,但是CCES上面对于21375没有例程,所以就必须自行修改,而我在修改21375的ldf时候出现了如下错误

Description Resource Path Location

Type cc3089: fatal error: Link failedprocessor-21375-CCES

C/C++ Problem

我是想在bolck3里面加一个48bit的mem_block3_dm48

我的ldf的代码如下:

/*

   ** -------------------------- BLOCK 3 ---------------------------------------

   ** SRAM 0x00070000 to 0x000707FF Long Word (64)

   ** SRAM 0x000E0000 to 0x000E0AAA Extended Precision Normal or Instruction (48)

   ** SRAM 0x000E0000 to 0x000E0FFF Normal Word (32)

   ** SRAM 0x001C0000 to 0x001C1FFF Short Word (16)

   */

   mem_block3_dm32         { TYPE(DM RAM) START(0x000E0000) END(0x000E0FFF) WIDTH(32) }

   mem_flash               { TYPE(DM RAM ASYNCHRONOUS) START(0x08000000) END(0x083FFFFF) WIDTH(8) }

/*   mem_sdram_data          { TYPE(DM RAM SYNCHRONOUS) START(0x00200000) END(0x0027FFFF) WIDTH(32) }*/

   /*$VDSG<insert-new-memory-segments>                          */

   /* Text inserted between these $VDSG comments will be preserved */

   mem_block3_dm48         { TYPE(DM RAM) START(0x000E0000) END(0x000E07FF) WIDTH(48) }

   /*$VDSG<insert-new-memory-segments>                          */

} /* MEMORY */

在我把mem_block3_dm48这一行注释掉之后程序不再报错,而我也尝试过修改mem_block3_dm48的END后面的值仍然报错。此外我也尝试过在其他block中增加一些可用但是没有用的memery,程序仍然报错,请问对于这个ldf应该怎么修改呢?




我是OP...
等级:管理员 参考IP地址:*.*.*.*
2014/7/19 11:49:47
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5187
金钱:34761
积分:6369
注册时间:2011/6/7
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
答:关于LDF的修改,你可以参看下面链接的手册

http://www.analog.com/static/imported-files/software_manuals/cces_1-0-2_linker_man_rev.1.2.pdf


我是OP...
等级:管理员 参考IP地址:*.*.*.*
2014/7/19 11:50:07
liangbread(论坛新手)
liangbread
头衔:社区公民
帮派:无帮无派
帖数:10
金钱:228
积分:17
注册时间:2014/2/18
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
其实这里的主要问题是对于/*

   ** -------------------------- BLOCK 3 ---------------------------------------

   ** SRAM 0x00070000 to 0x000707FF Long Word (64)

   ** SRAM 0x000E0000 to 0x000E0AAA Extended Precision Normal or Instruction (48)

   ** SRAM 0x000E0000 to 0x000E0FFF Normal Word (32)

   ** SRAM 0x001C0000 to 0x001C1FFF Short Word (16)

   */

的理解有误,其实这里的说法是BLOCK3设为不同width也就是不同位宽的时候的地址范围,也就是BLOCK3的大小就是这么大了,如果你设为64位宽的话,地址范围就是 0x00070000 to 0x000707FF而位宽设为48bit的时候,地址范围就是0x000E0000 to 0x000E0AAA了。所以在以上的ldf文件中,对于block3的存储空间(storage capacity)已经用完了,无论怎么设接下来的width48的ldf都会报错。下面是我后来自行修改的ldf文件,全文详见附件。PS:即使我后来修改了正确的ldf文件,也还是无法再21375上使用sigma studio,因为sigma studio不支持21375,这是我在建立了整个工程,在CCES里面调用sigma studio的一些底层函数的时候的痛苦的领悟。

/*

   ** -------------------------- BLOCK 3 ---------------------------------------

   ** SRAM 0x00070000 to 0x000707FF Long Word (64)

   ** SRAM 0x000E0000 to 0x000E0AAA Extended Precision Normal or Instruction (48)

   ** SRAM 0x000E0000 to 0x000E0FFF Normal Word (32)

   ** SRAM 0x001C0000 to 0x001C1FFF Short Word (16)

   */

   mem_block3_dm32         { TYPE(DM RAM) START(0x000E0800) END(0x000E0FFF) WIDTH(32) }


   /*

   ** -------------------------- External Memory -------------------------------

   */

   mem_sdram_data          { TYPE(DM RAM SYNCHRONOUS) START(0x00200000) END(0x004FFFFF) WIDTH(16) }

   mem_sdram_code          { TYPE(PM RAM SYNCHRONOUS) START(0x00500000) END(0x009FFFFF) WIDTH(16) }

  /* mem_sdram_code          { TYPE(PM RAM SYNCHRONOUS) START(0x00500000) END(0x00500FFF) WIDTH(48) }*/

   mem_flash               { TYPE(DM RAM ASYNCHRONOUS) START(0x08000000) END(0x083FFFFF) WIDTH(8) }

  

   /*$VDSG<insert-new-memory-segments>                          */

   /* Text inserted between these $VDSG comments will be preserved */

   mem_block3_dm48        {TYPE(DM RAM) START(0x000E0000) END(0x000E0554) WIDTH(48) }

   mem_block2_dm48        {TYPE(PM RAM) START(0x000C0000) END(0x000C0554) WIDTH(48) }



「该帖子被 liangbread 在 2014-07-19 17:39:08 编辑过」

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2014/7/19 17:38:03
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.154304 Call, 1 Queries, Processed in 0.015625 second(s),