嵌入式开发者社区

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

作者: 小石    时间: 2017-5-25 18:22
标题: omapl138 双核后DSP端的EMIF不能通信了??
大家不知道有遇到过没有,对于omapl138 ,当只使用DSP单核时,使用EMIF模块和FPGA通信是可以的,但是当我
$ k6 u: I2 b$ d$ z8 J将ARM核开启使用linux后,在linux中启动dsp程序,EMIF模块就不能通信了
6 c9 G. m- {# g5 G  V# n8 Y,是不是 ARM核已经开启了EMIF模块用于NandFlash通信,所以在DSP开启EMIF冲突了,不知还有别的原因吗?
; X) |! s+ ]( a( G/ v谢谢!8 w% g: Y* z5 i) X7 w, R# `

作者: human    时间: 2017-5-25 21:26
有片选区分,如果你的程序有数据写到nand就可能用冲突
作者: 小石    时间: 2017-5-26 17:45
human 发表于 2017-5-25 21:26
* H  D& h: r4 b5 j8 D( ]5 F! c有片选区分,如果你的程序有数据写到nand就可能用冲突

& n- z8 Y, H4 M% z- {) ]' T$ k我没有对NandFlash操作,我就是有DSP单核的时候是可以但是当双核都启动时,就不可以了,不知道创龙在开发 案例 syslink/ad7606_dsp案例的时候,有没有做其他更改(和在单核时的案例StarterWare\Application\EMIF_AD7606初始化有没有不同之处)
作者: 小石    时间: 2017-6-1 18:56
解决了,代码是对的) r5 g) z) g$ ~+ @, t' |  m
和DSP单核的区别就是EMA_A_RW引脚(EMIFA异步读写控制,读期间为高,写期间为低电平)输出的问题:
; c4 y2 _( S! Z下图是DSP单核运行时的在FPGA端获取的时序图:
3 q' x. x! T; x9 V+ u7 V5 C! ^$ ?8 y, I) E4 m* d9 m1 b
具体对应的引脚时EMA_CS4,EMA_WE,  EMA_OE , EMA_A_RW[attach]2392[/attach]
; D2 M! p, ?4 t& p7 e
' B; j" K1 Y6 p% Y& E. ~; E' T下图是 ARM启动linux后,DSP端运行EMIF后的时序图:. }1 p  V$ ?2 R$ I( v* N
[attach]2393[/attach]/ r3 ^! k( j# l  f# W4 K
可以看到 比较为EMA_A_RW(EMIFA异步读写控制,读期间为高,写期间为低电平),没有变化。" d5 }- V/ K, t
因为FPGA端有当EMA_A_RW为低电平时是写数据,所以我向FPGA传递数据,一直是高电平,所以FPGA就一直获取不到数据,% b  \, P' P) w' n2 N0 Z# ~4 l
最后的办法就是让FPGA工程师,把这个条件去掉,就可以了,直接用EMA_WE引脚的变化来判断写。这样就OK了。( j9 R2 ?8 c) @0 N' c

作者: 小石    时间: 2017-6-1 18:59
是上贴的" P  r0 C2 O  t. S; A) d9 W
DSP单核运行时的在FPGA端获取的时序图:
" `0 \/ @& V  I' _[attach]2394[/attach]2 C( r, D9 H" F, K+ U3 a





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