嵌入式开发者社区

标题: omapl138 双核后DSP端的EMIF不能通信了?? [打印本页]

作者: 小石    时间: 2017-5-25 18:22
标题: omapl138 双核后DSP端的EMIF不能通信了??
大家不知道有遇到过没有,对于omapl138 ,当只使用DSP单核时,使用EMIF模块和FPGA通信是可以的,但是当我
# q' Y4 I4 k0 q8 Y+ t将ARM核开启使用linux后,在linux中启动dsp程序,EMIF模块就不能通信了
9 ~, s4 Z9 d' r* Y: z2 U# i5 q,是不是 ARM核已经开启了EMIF模块用于NandFlash通信,所以在DSP开启EMIF冲突了,不知还有别的原因吗?
/ |3 H9 j4 g5 P4 I) A' S* ]谢谢!
/ Z2 x1 T: d( l( \% [) X5 z. K
作者: human    时间: 2017-5-25 21:26
有片选区分,如果你的程序有数据写到nand就可能用冲突
作者: 小石    时间: 2017-5-26 17:45
human 发表于 2017-5-25 21:26
& v9 R; m' u5 k; Y% v+ f% |: c有片选区分,如果你的程序有数据写到nand就可能用冲突
6 L' D, r7 s* L- v& V- Y
我没有对NandFlash操作,我就是有DSP单核的时候是可以但是当双核都启动时,就不可以了,不知道创龙在开发 案例 syslink/ad7606_dsp案例的时候,有没有做其他更改(和在单核时的案例StarterWare\Application\EMIF_AD7606初始化有没有不同之处)
作者: 小石    时间: 2017-6-1 18:56
解决了,代码是对的
3 D: G9 Q8 z6 A7 R3 _; V- i和DSP单核的区别就是EMA_A_RW引脚(EMIFA异步读写控制,读期间为高,写期间为低电平)输出的问题:
! K6 k; S/ ?# e. W1 a下图是DSP单核运行时的在FPGA端获取的时序图:
3 t; w3 I+ f: n! M2 @% J- ]. W# @$ E9 {: m6 F
具体对应的引脚时EMA_CS4,EMA_WE,  EMA_OE , EMA_A_RW[attach]2392[/attach]
( F$ u1 U3 p5 c# H
! F' `# o+ A4 t/ s, C: z9 {下图是 ARM启动linux后,DSP端运行EMIF后的时序图:
6 q) y" J4 i" i& g7 H[attach]2393[/attach]
1 m# H4 Q6 Z6 o: f可以看到 比较为EMA_A_RW(EMIFA异步读写控制,读期间为高,写期间为低电平),没有变化。4 f# d9 c  L* g% Y. w7 E2 s
因为FPGA端有当EMA_A_RW为低电平时是写数据,所以我向FPGA传递数据,一直是高电平,所以FPGA就一直获取不到数据,
5 z! W' i4 `  H8 f4 b最后的办法就是让FPGA工程师,把这个条件去掉,就可以了,直接用EMA_WE引脚的变化来判断写。这样就OK了。
) c6 C% p$ s# F+ K% ^
作者: 小石    时间: 2017-6-1 18:59
是上贴的
0 `; D6 I6 h1 {" s3 r) y) ?+ O# `DSP单核运行时的在FPGA端获取的时序图:% ?! q0 d3 F- p. ]
[attach]2394[/attach]# V. k' I& f3 r+ B! _- y





欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4