嵌入式开发者社区
标题:
omapl138 双核后DSP端的EMIF不能通信了??
[打印本页]
作者:
小石
时间:
2017-5-25 18:22
标题:
omapl138 双核后DSP端的EMIF不能通信了??
大家不知道有遇到过没有,对于omapl138 ,当只使用DSP单核时,使用EMIF模块和FPGA通信是可以的,但是当我
2 [6 D% w6 v- A4 G
将ARM核开启使用linux后,在linux中启动dsp程序,EMIF模块就不能通信了
# Q q% ~5 x4 r
,是不是 ARM核已经开启了EMIF模块用于NandFlash通信,所以在DSP开启EMIF冲突了,不知还有别的原因吗?
. u2 ~2 H" ^: O$ b* `
谢谢!
) s# D6 H7 t1 ~ G1 m
作者:
human
时间:
2017-5-25 21:26
有片选区分,如果你的程序有数据写到nand就可能用冲突
作者:
小石
时间:
2017-5-26 17:45
human 发表于 2017-5-25 21:26
% e2 R* i+ U* K( g
有片选区分,如果你的程序有数据写到nand就可能用冲突
- d9 ^, B6 F. U- E
我没有对NandFlash操作,我就是有DSP单核的时候是可以但是当双核都启动时,就不可以了,不知道创龙在开发 案例 syslink/ad7606_dsp案例的时候,有没有做其他更改(和在单核时的案例StarterWare\Application\EMIF_AD7606初始化有没有不同之处)
作者:
小石
时间:
2017-6-1 18:56
解决了,代码是对的
; i2 `7 |/ G: n0 J* J$ f1 ~
和DSP单核的区别就是EMA_A_RW引脚(EMIFA异步读写控制,读期间为高,写期间为低电平)输出的问题:
/ T/ ]# p7 D- V9 o3 C" [% V' U/ F1 R
下图是DSP单核运行时的在FPGA端获取的时序图:
5 {1 G4 {; Q$ j9 M6 i) ^, Y, u
7 Q% F4 g( n. ^$ ~$ g: }
具体对应的引脚时EMA_CS4,EMA_WE, EMA_OE , EMA_A_RW[attach]2392[/attach]
. F& C; M1 x! i, r
. P* k/ q x1 v+ L9 P
下图是 ARM启动linux后,DSP端运行EMIF后的时序图:
- P) E. O' X, U$ ^5 U1 O7 Y
[attach]2393[/attach]
' N5 @- ?* p6 m
可以看到 比较为EMA_A_RW(EMIFA异步读写控制,读期间为高,写期间为低电平),没有变化。
! p( u/ N; m7 h- Q( P
因为FPGA端有当EMA_A_RW为低电平时是写数据,所以我向FPGA传递数据,一直是高电平,所以FPGA就一直获取不到数据,
1 ?; f& x: n; R5 t. m
最后的办法就是让FPGA工程师,把这个条件去掉,就可以了,直接用EMA_WE引脚的变化来判断写。这样就OK了。
% h3 v7 |. e* d
作者:
小石
时间:
2017-6-1 18:59
是上贴的
' R* s3 y" A2 M5 o- c
DSP单核运行时的在FPGA端获取的时序图:
7 ?* K+ S2 {) b( ]0 J
[attach]2394[/attach]
) y$ `" X) I4 f- Z) M+ Y
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4