TC397访问外设寄存器时间问题

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
JoeDai
Level 1
Level 1
5 replies posted 5 questions asked First reply posted
现在遇到了一个问题,再给GTM.ATOMX.CHX的SR0或SR1赋值时一句赋值语句的周期要130ns左右,相当于几十个指令周期;而TI的DSP芯片对相应PWM寄存器赋值一条语句执行时间只有几ns,只占一个指令周期。这是什么原因导致的?为什么TC397对外设赋值这么慢?
0 点赞
3 回复数
YuanLi
Level 5
Level 5
是不是中断优先级设置不对
0 点赞
harvis
Level 5
Level 5
10 solutions authored First like received First like given
要看编译后的汇编指令,xxx.yyy=zzz;确实是一条C语言赋值语句,翻译成汇编就是很多条汇编指令了。可以用汇编直接操作寄存器会快很多。
0 点赞
JoeDai
Level 1
Level 1
5 replies posted 5 questions asked First reply posted
我用调试器看到了编译器翻译的汇编指令。movh.a a15,#0xF01F lea a15,[a15]-0x5780 这两句是给指针变量赋值的,指向ATOM通道寄存器;st16.w [a15]0x8,d3 这一句是将值写入寄存器的,运行的比较慢。这句有什么问题吗?如果寄存器不能直接赋值,我该用哪些汇编指令代替?
0 点赞