Part Number:TMS320C6678
各位专家好,最近调试程序有点疑问想请教一下。
6678手册中关于memory内存的定义里面,有4M的空间标明是core register,是不是意味着TSCL、TSCH、DNUM,以及A0\A1\B0\B1等,都在这段内存里面?但是具体的地址我没找到,官方有没有这方面的介绍?
此外,6678一共8个核,除了外设寄存器,每个核应该都有自己独立的寄存器,那么其地址在哪里?memory里没也看到专门的对core0、core1的划分。
请专家解惑,谢谢。
Nancy Wang:
fuchao 说:有4M的空间标明是core register,是不是意味着TSCL、TSCH、DNUM,以及A0\A1\B0\B1等,都在这段内存里面?但是具体的地址我没找到,官方有没有这方面的介绍
以下文档参考看一下,具体地址没有看到。
www.ti.com/…/sprugh7.pdf
可以连上板子看一下ccs中register窗口,其中有core register的详细内容。
fuchao 说:6678一共8个核,除了外设寄存器,每个核应该都有自己独立的寄存器,那么其地址在哪里?memory里没也看到专门的对core0、core1的划分。
具体是指哪些寄存器?
,
fuchao:
Nancy Wang 说:可以连上板子看一下ccs中register窗口,其中有core register的详细内容。
连上板子再ccs register窗口可以看到core register,和 control register。
其中core register就是PC\SP\A0~A32之类。
control register.就是TSCL\TSCH\DNUM之类。
Nancy Wang 说:具体是指哪些寄存器?
指的就是core register。
我试了一下,在程序中直接读取TSCL等的寄存器值是可以的,但是读取PC等的寄存器值不可以。
我现在是想把程序运行的PC指针保存起来,不知道有没有方法?
,
fuchao:
十分感谢您的回复。
,
Nancy Wang:
fuchao 说:我现在是想把程序运行的PC指针保存起来,不知道有没有方法?
应该没有。请问保存PC指针的目的是什么?
,
fuchao:
感谢您的回复。
我想试着找出一种可以将从核的PC指针上报给核0的方法,以达到在某个时刻由核0停止从核运行->恢复从核运行的目的。
然后第一步就卡住了。
此外,我还想请教一下,对于DSP运行栈区的操作,有没有相关的文档介绍?我在手册中目前还没找到。
比如进入中断,进入子函数,栈区是怎么处理的?压栈出栈的操作顺序或者说流程是怎样的?
期待您的回复,再次谢谢。
,
Nancy Wang:
保存PC指针应该没法实现。
看一下 8.1.2 C/C++ System Stack
www.ti.com/…/sprui04b.pdf
,
fuchao:
手册已收到。
关于PC指针,我再试试看。
感谢您!
,
Nancy Wang:
好的,不客气。