各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
BIN YAO1:
我用C28346的ZONE6扩了一个AD,ZONE7扩了一块FPGA,是没有什么问题的。
“非复用总线”就我的理解而言,是不能同时使用,即如果你在访问ZONE0的同时,又有需要对ZONE6的访问操作,如果ZONE0不能及时释放总线,那么ZONE6的访问可能会出现问题。
为了避免XINTF的冲突,个人觉得使用DMA进行XINTF的访问是一个比较合适的方法。
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
jim green5:
回复 BIN YAO1:
感谢回复!
C28346跟28335的XINTF是一样的吧?看来XINTF连接多个设备是可行的。
也有人建议用DMA方式读写多个ZONEn,只是XINTF怎么设置还有点迷糊,特别是ZONE之间跳转的XBNAK部分。
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
jim green5:
回复 BIN YAO1:
看了手册,2个区别,不是很大:
1。 2833的XA0和/WE1是针脚复用,C2834X是单独针;
2。2833的XBANK的延时周期需要设定,C2834X的XBANK不需要
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
BIN YAO1:
回复 jim green5:
XBANK就是你从一个ZONE操作换到另一个ZONE操作的延时,这个和你的总线操作速率有关,可以自己调节的。
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
jim green5:
回复 BIN YAO1:
再请问一下BIN YAO1
你用ZONE7扩展FPGA,用的是DMA读写么?如果是DMA读写,是否包含像C28346读写FPGA寄存器这种操作。
我用XINTF连接的是AD和网卡。DMA读写AD只是在指定地址间复制数据,效率高。但用DMA读写网卡好像不太好设置。
因为报文收发过程中要读写多个网卡的寄存器,DMA不好设置。但读/写网卡的数据缓冲区我理解可以用DMA。
你对这种情况有什么看法?
两个设备都不用DMA,好像冲突没有了。但能连续稳定工作多长时间还不确定。
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
BIN YAO1:
回复 jim green5:
我在读写FPGA的时候读用的是DMA操作,而写则没有,因为写的内容比较少,因此直接是CPU写。
C28346在读FPGA的时候,并不需要特别的操作,就是把FPGA看成是外部RAM一样,将数组定义到ZONE7区域,然后再进行DMA操作,和读AD的方法是一样的。
至于你说的读写网卡,我并没有使用过网卡,因此对网卡的操作机制也不是很清楚,我想问下:对于网卡而言,其内部寄存器的地址是否等间隔?如果是等间隔的,用DMA理论上是可以实现的。
在没有使用DMA的情况下,你是直接使用的寄存器赋值吗?
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
jim green5:
回复 BIN YAO1:
我用的网卡内部寄存器地址是等间隔的,或者说是有规律的。但当前是哪个寄存器被读写是不确定的。即是读是写,以及读写地址都是不确定的,要根据代码来。
比如当前读地址为0x001的寄存器,下一条指令可能是写0x030,或者0x033,或其他地址。有些读写已经封装成函数。我想这种情读写方式DMA不适合。
不使用DMA,是直接对寄存器赋值。
各位好:
28335的XINTF接口同时与一片A/D和一片网卡芯片连接。A/D映射到ZONE6,网卡映射到ZONE0。
A/D(28335使用DMA读)和网卡单独使用正常,但同时工作不行,好像是28335死掉了。
请问下,XINTF连接两个外设同时工作应该怎么设置?
另,XINTF datasheet里第一句说XINTF是非复用总线,这个“非复用总线”是指不能同时连接两个设备么?上面这种硬件连接方式是否可行?
如果可行,XINTF与两个不同类型设备连接,该注意哪些问题。
谢谢!
jim green5:
回复 BIN YAO1:
对网卡的接收和发送缓冲区的读写我觉得可以用DMA方式,就跟RAM或A/D读写一样。