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

6678访问外设和访问L2时会有冲突吗?

我现在用的是自己的6678板子,最近编写程序,对数据IO与数据处理进行并行,现在遇到的问题是:

1、单独进行SRIO的读写(利用中断的方式),IO时间很正常;

2、如果先调用SRIO写,加上数据处理(会频繁访问L2),这样IO的时间会明显增长(30%);

这是为什么啊,理论上外设和内核进行数据处理应该是并行的啊?各位大神,求指导……

Allen35065:

这很正常,数据处理是并行的,但内存访问是串行的,如果你需要保证IO时间,那么可以在系统里提升SRIO的优先级,但这样做会导致内核的读写变慢。

jiabin li:

回复 Allen35065:

谢谢你的回答,但是我查看了关于6678的架构,如果SRIO进行发送的数据处于共享内存,而内核访问的资源在L2上,他们应该走的不是一根总线啊,这样也会串行吗?

Allen35065:

回复 jiabin li:

内核可以访问SL2,不仅仅是数据段,代码段放在SL2上同样也有影响。

jiabin li:

回复 Allen35065:

那我是否可以这样理解呢?

如果外设和内核同时访问任意内存(L2、共享内存或者DDR3),内存访问就是串行的。

Allen35065:

回复 jiabin li:

不是的,L2,SL2,DDR3端口是独立的,访问同一端口时可能会产生冲突需要仲裁

jiabin li:

回复 Allen35065:

很抱歉,如果我的SRIO发送的数存在共享内存,内核访问的数在L2,我觉得这样应该不是内存访问的问题了吧……

jiabin li:

回复 Allen35065:

我再看看吧……

赞(0)
未经允许不得转载:TI中文支持网 » 6678访问外设和访问L2时会有冲突吗?
分享到: 更多 (0)