1.GPIO中断能接受的最大脉冲频率是多少?
2.OMAPL138的ARM与DSP的运行是并行的吗。在测试过程中,当GPIO的中断频率达到1MHZ时,DSP正常运行中断服务函数,而ARM上Linux系统却不能响应用户输入,如ls等简单命令;当GPIO的中断频率达到500KHZ时,DSP正常运行中断服务函数,而ARM上Linux系统勉强可以响应用户输入,但速度较慢。
有谁遇到这样的问题,能否指教一下,甚为感谢。
Tony Tang:
#1. 这个问题分为两方面,一是GPIO接口能分辨多快的切换,这个在datasheet上GPIO章节有说明,二是ISR程序运行的时间,这与程序自身相关。
#2. 请问DSP的程序是运行在DDR还是片上RAM? 如果是在DDR上,DSP端的Cache是否有打开并使能?
corez zhao:
回复 Tony Tang:
感谢Tony Tang的回复。
DSP的程序是运行在共享的RAM上(SHDSPL2RAM o = 0x11800000 l = 0x00040000 /* 256kB L2 Shared Internal RAM */);
当然也测试过将DSP程序运行在DSP的单独RAM上(DSPL2RAM o = 0x00800000 l = 0x00040000 /* 256kB L2 DSP local RAM */),开始2分钟之内,ARM侧响应是正常的,但是超过3分钟之后,ARM侧就没有响应了。
如果在DDR上,DSP端的Cache怎么打开和使能。