AM335X工控应用网络扩展技术详解-DM9000C

来源:互联网 发布:淘宝联盟使用教程 编辑:程序博客网 时间:2024/05/11 05:33

AM335X工控应用网络扩展技术详解-DM9000C

注:文章版权属于成都莱得科技有限公司所有,转载请注明出处,保留此行文字。

1,          工业多以太网网络应用

工控板在工业领域应用了10多年,应用领域广,技术成熟。但是局限性也越来越突出。越来越多的设备要求低功耗,无风扇,无散热器,更宽的温度范围,更小的体积。这给处理能力越来越强的ARM处理器在工业领域带来无限应用空间。

以太网是通讯应用最广泛的通讯方式,其中在铁路,电力领域需要设备拥有网络数量高达6个之多。这在现有处理器上是无法实现的。唯一的办法是通过总线扩展。

本文是成都莱得科技基于AM335X的网络扩展技术文章,总结了AM335X的网络实现的硬件和软件以及设计中遇到的问题和解决办法。

2,          AM335X的网络资源

处理器框图:

 

板卡框图:

 

3,          网络扩展框图

DM9000AM335X通过总线连接,15位双线总线,

采用工业级DM9000CI

4,          DM9000CDM9000A的差别

     DM9000AEPDM9000CEP在管脚定义上是完全PIN TO PIN,都是LQFP48PIN,目前因为行业竞争巨大,低成本的芯片层出不穷,所以DAVICOM在近几年推出低成本的10/100M自适应的DM9000CEP。价格相对来说,DM9000CEP会低一些。

DM9000AEP是采用0.25um的工艺制作,DM9000CEP是采用0.18um,更小。

       DM9000AEPPIN1,2,9是输出2.5VDM9000CEP是输出1.8V。此AVDD_PW是连接到网络变压器的CT,然后通过RX,TX4根线,回流到网络芯片上。也就是说这个输出电压的降低,并不影响整个电路。

       DM9000CEP的驱动,跟DM9000AEP有一点区别,是在PHY启动部分,DM9000CEP需要时间长一点。所以在更改驱动的时候,主要把延时的时间设置的长一点。另外DM9000C的总线驱动能力差些,在总线上连接多个DM9000或者连接了多个其它外设会让默认的总线驱动能力不够。

5,          问题分析及解决

问题1

DM9000,打印信息中有DM9000,但是不能ping

   使用的DM9000C,更换为DM9000A后能ping通,网络工作正常。

原因,DM9000C总线延迟最大19nsIOR无效到SD无效时间最大6ns

DM9000A的总线延迟最大3nsIOR无效到SD无效最大3ns

所以DM9000C的响应速度要慢得多,在驱动中在访问操作中需要做适当的延迟。

问题2

总线上同时做两个DM9000C网络扩展,一个串口扩展芯片SC16C654B

可以识别DM9000芯片,也可以link,同时CPU可以发正确的包出去,但是CPU通过网络接收的包不正确。在数据位有一些位始终不能为高电平。但是换为DM9000A芯片是网络正常

原因:

总线上挂3个及3个以上控制器时,需要总线的驱动能力增强。DM9000A的默认总线驱动能力为8mA,而DM9000C默认总线驱动能力为2mA。如果驱动3个及3个以上外设就会出现问题。DM9000在总线驱动能力上是可以设置的,所以这个问题通过设置总线驱动能力来解决。

寄存器:Processor Bus Control Register(38H),将DM9000C的此寄存器bit6bit5改为11,总线驱动能力为8mA,即可解决这个问题。

 

原创粉丝点击