TI中文支持网
TI专业的中文技术问题搜集分享网站

F2837xD片内RAMD的分布

1.datasheet上写着f2837xD的RAM为168k-204k,但我根据memory map中算了下好像是168k,想问下剩余的36kRAM如何获得?

2.M0/M1/D0/D1这四个区域均为各自cup专属的片内RAM,但在datasheet并没有写出cpu1和cpu2各占用多少,平分?还是说使用是可以自己分配,比如cpu1使用了A,cpu2使用的是补集?假设只用单核,这四个专属去最大能用到多少?抑或是在哪些地方我忽略了,我看的是spruhm8和sprs880两份材料。

3.LSx寄存器也是同样的问题。

 

忘高手帮忙,谢谢

Derek Lyn:

回复 Hank Zhao:

您好,

       很感谢您的回复,我把第3个问题理解了。补充下:

      1.对于第二个问题,在“1.4 Functional Block Diagram”中有标明,应该是cpu1,2各占有D0和D1各2Kb?无论是单核使用还是双核使用,每个CPU最多可以用到  

          M0,M1各1kb,D0,D1各2kb?

      2.对于第一个问题,对于2837xd,从datasheet看RAM的空间(memory map)应该是由M0/M1,D0/D1,LSX0-LSX5,GS0-GS15,MSG这五个部分组成,我算下

          来是168kb。是不是 应该包括寄存器的空间以及USB RAM和EMIF2等空间呢?要不然算不出最大的204kb吧?

     3.关于TI给的官方例程,“F2837xD_examples_Dual”中的例程应该是双核的工程分别下载吧?那为什么每个工程如cpu01或者cpu02中都没有cmd文件,那如果

        这两个工程下载到芯片中运行的ram在两个内核应该如何分配?是不是需要自己分别在两个工程中配置cmd文件来分配两个核使用的RAM?

    4.承接问题3,在“controlSUITE\device_support\F2837xD\v100\F2837xD_common\cmd”也就是TI官方提供的cmd文件夹中有不少cmd文件,举其中

       的“2837x_RAM_lnk_cpu1”和“2837x_RAM_lnk_cpu2”来看,是不是下载程序时可以把这两个文件分别加到两个工程中?从下载到的“Labs”里面的“Lab4”来

      看,其中Lab4_cpu01和Lab4_cpu02分别用了上面讲的两个cmd。但是如果仔细看这两个cmd的话,我看到的主要不同是两者的RAMM0其实地址和长度不

      同,其他都一样。那这里的问题就是,之前讨论的M0/M1,D0/D1应该都是各cpu各有一套,但是无论是“2837x_RAM_lnk_cpu1”还是“2837x_RAM_lnk_cpu2”,

      里面标注的M1都是1KW,D0/D1都是2KW,而且地址相同。根据Memory Map以及“1.4 Functional Block Diagram”来看,我的理解是这样的:M0/M1,D0/D1,LSx

      都是每个cpu各有一套的,但是他们的地址相同,长度相同,双核同时使用的时候不需要关心其分配,系统自动分配?如果只使用单核的话,M0/M1各可以用到

      1kw,D0/D1各可以用到2kw,也就是同样可以用满这些空间?从functional block来看,会以为是cpu1,2的M0都有1kw,D0都各有2kw,但实际从memory map来

      看系统给两个cpu分配的M0空间总共也就是1kw,D0总共也就是2kw,那只能理解为两个cpu是公用的,实际使用多少再分配,但能保证是互斥?

  5. 以前用的是28335,双核的从来没有用过,所以对双核的机制很陌生,“spruhm8”内容太多,是不是可以主要从1 SC, 2.ROM, 5.IPC, 6.GPIO, 23 EMIF这几部分

      内容来把握双核机制的,至于具体外设使用时再说?或者能否借鉴F28M35x的使用来理解377D?

6.最新版的CCS5.5也不支持28377D的开发,是要下载插件吗还是?另外如果还是用CCS3.3的话能否开发28377D,如果能,应该下载哪些插件?

ps.问题有点多,实在很不好意思,谢谢。

1.datasheet上写着f2837xD的RAM为168k-204k,但我根据memory map中算了下好像是168k,想问下剩余的36kRAM如何获得?

2.M0/M1/D0/D1这四个区域均为各自cup专属的片内RAM,但在datasheet并没有写出cpu1和cpu2各占用多少,平分?还是说使用是可以自己分配,比如cpu1使用了A,cpu2使用的是补集?假设只用单核,这四个专属去最大能用到多少?抑或是在哪些地方我忽略了,我看的是spruhm8和sprs880两份材料。

3.LSx寄存器也是同样的问题。

 

忘高手帮忙,谢谢

Derek Lyn:

回复 Hank Zhao:

您好,

       很感谢您的回复,我把第3个问题理解了。补充下:

      1.对于第二个问题,在“1.4 Functional Block Diagram”中有标明,应该是cpu1,2各占有D0和D1各2Kb?无论是单核使用还是双核使用,每个CPU最多可以用到  

          M0,M1各1kb,D0,D1各2kb?

      2.对于第一个问题,对于2837xd,从datasheet看RAM的空间(memory map)应该是由M0/M1,D0/D1,LSX0-LSX5,GS0-GS15,MSG这五个部分组成,我算下

          来是168kb。是不是 应该包括寄存器的空间以及USB RAM和EMIF2等空间呢?要不然算不出最大的204kb吧?

     3.关于TI给的官方例程,“F2837xD_examples_Dual”中的例程应该是双核的工程分别下载吧?那为什么每个工程如cpu01或者cpu02中都没有cmd文件,那如果

        这两个工程下载到芯片中运行的ram在两个内核应该如何分配?是不是需要自己分别在两个工程中配置cmd文件来分配两个核使用的RAM?

    4.承接问题3,在“controlSUITE\device_support\F2837xD\v100\F2837xD_common\cmd”也就是TI官方提供的cmd文件夹中有不少cmd文件,举其中

       的“2837x_RAM_lnk_cpu1”和“2837x_RAM_lnk_cpu2”来看,是不是下载程序时可以把这两个文件分别加到两个工程中?从下载到的“Labs”里面的“Lab4”来

      看,其中Lab4_cpu01和Lab4_cpu02分别用了上面讲的两个cmd。但是如果仔细看这两个cmd的话,我看到的主要不同是两者的RAMM0其实地址和长度不

      同,其他都一样。那这里的问题就是,之前讨论的M0/M1,D0/D1应该都是各cpu各有一套,但是无论是“2837x_RAM_lnk_cpu1”还是“2837x_RAM_lnk_cpu2”,

      里面标注的M1都是1KW,D0/D1都是2KW,而且地址相同。根据Memory Map以及“1.4 Functional Block Diagram”来看,我的理解是这样的:M0/M1,D0/D1,LSx

      都是每个cpu各有一套的,但是他们的地址相同,长度相同,双核同时使用的时候不需要关心其分配,系统自动分配?如果只使用单核的话,M0/M1各可以用到

      1kw,D0/D1各可以用到2kw,也就是同样可以用满这些空间?从functional block来看,会以为是cpu1,2的M0都有1kw,D0都各有2kw,但实际从memory map来

      看系统给两个cpu分配的M0空间总共也就是1kw,D0总共也就是2kw,那只能理解为两个cpu是公用的,实际使用多少再分配,但能保证是互斥?

  5. 以前用的是28335,双核的从来没有用过,所以对双核的机制很陌生,“spruhm8”内容太多,是不是可以主要从1 SC, 2.ROM, 5.IPC, 6.GPIO, 23 EMIF这几部分

      内容来把握双核机制的,至于具体外设使用时再说?或者能否借鉴F28M35x的使用来理解377D?

6.最新版的CCS5.5也不支持28377D的开发,是要下载插件吗还是?另外如果还是用CCS3.3的话能否开发28377D,如果能,应该下载哪些插件?

ps.问题有点多,实在很不好意思,谢谢。

1.datasheet上写着f2837xD的RAM为168k-204k,但我根据memory map中算了下好像是168k,想问下剩余的36kRAM如何获得?

2.M0/M1/D0/D1这四个区域均为各自cup专属的片内RAM,但在datasheet并没有写出cpu1和cpu2各占用多少,平分?还是说使用是可以自己分配,比如cpu1使用了A,cpu2使用的是补集?假设只用单核,这四个专属去最大能用到多少?抑或是在哪些地方我忽略了,我看的是spruhm8和sprs880两份材料。

3.LSx寄存器也是同样的问题。

 

忘高手帮忙,谢谢

Derek Lyn:

回复 Hank Zhao:

Hank Zhao

       不好意思再问一个问题,关于cmd文件的编写,TI有没有官方的user guide?

1.datasheet上写着f2837xD的RAM为168k-204k,但我根据memory map中算了下好像是168k,想问下剩余的36kRAM如何获得?

2.M0/M1/D0/D1这四个区域均为各自cup专属的片内RAM,但在datasheet并没有写出cpu1和cpu2各占用多少,平分?还是说使用是可以自己分配,比如cpu1使用了A,cpu2使用的是补集?假设只用单核,这四个专属去最大能用到多少?抑或是在哪些地方我忽略了,我看的是spruhm8和sprs880两份材料。

3.LSx寄存器也是同样的问题。

 

忘高手帮忙,谢谢

Derek Lyn:

回复 Hank Zhao:

Hank Zhao

       还有一个问题,在‘2837x_RAM_lnk_cpu1’和‘2837x_RAM_lnk_cpu2’两个cmd中,为什么定义的RAMM0的起始地址和长度不同,其他的区域都一样?

1.datasheet上写着f2837xD的RAM为168k-204k,但我根据memory map中算了下好像是168k,想问下剩余的36kRAM如何获得?

2.M0/M1/D0/D1这四个区域均为各自cup专属的片内RAM,但在datasheet并没有写出cpu1和cpu2各占用多少,平分?还是说使用是可以自己分配,比如cpu1使用了A,cpu2使用的是补集?假设只用单核,这四个专属去最大能用到多少?抑或是在哪些地方我忽略了,我看的是spruhm8和sprs880两份材料。

3.LSx寄存器也是同样的问题。

 

忘高手帮忙,谢谢

Eric Ma:

回复 Derek Lyn:

Derek

cmd文件一般参考ControlSUITE中的样例即可,有RAM和FLASH的CMD。

关于CMD的说明可以参照附件8.5节。

 

Eric

1.datasheet上写着f2837xD的RAM为168k-204k,但我根据memory map中算了下好像是168k,想问下剩余的36kRAM如何获得?

2.M0/M1/D0/D1这四个区域均为各自cup专属的片内RAM,但在datasheet并没有写出cpu1和cpu2各占用多少,平分?还是说使用是可以自己分配,比如cpu1使用了A,cpu2使用的是补集?假设只用单核,这四个专属去最大能用到多少?抑或是在哪些地方我忽略了,我看的是spruhm8和sprs880两份材料。

3.LSx寄存器也是同样的问题。

 

忘高手帮忙,谢谢

Derek Lyn:

回复 Eric Ma:

Eric,

     谢谢您关于cmd文件的问答

 

Derek

赞(0)
未经允许不得转载:TI中文支持网 » F2837xD片内RAMD的分布
分享到: 更多 (0)