总线专题:第四讲 FF的HSE
1.HSE的由来
按照现场总线基金会原来的构思,基金会现场总线FF(Foundation Fieldbus)是由低速部分H1与高速部分H2共同组成,H2的传输速率有1Mbps与2.5Mbps二种,传输距离分别为750m与500m。由于技术的低速发展,互联网技术向控制网络的渗透,H2还未正式出台就已经显得不适应应用的需求而改为高速以太网HSE(High Speed Ethernet),其传输速率为100Mbps,并于2000年3月29日发布了HSE的规范。由于HSE采用了以太网,所以要简单地先介绍了一下以太网与工业以太网。
2.以太网的简介
(1)以太网的由来
以太网(Ethernet)最初是由美国Xerox公司于1975年推出的一种局域网,他以无源电缆作为总线来传送数据,并以曾经在历史上表示传播电磁波的以太(Ether)来命名,那个时候认为以太无所不在(实际上目前认为他并不存在),所以借此来理解为可以将大量数据一次送往任何各地。1980年9月,DEC(数据设备公司,目前已被Compact公司收购,已不存在),Intel及Xerox合作公布了Ethernet物理层和数据链路层的规范,称为DIX规范。IEEE802.3是由美国电气与电子工程师协会IEEE(Institute of Electrical and Electronics Engineers)公布了以太网物理层和数据链路层的规范。IEEE802.3是由IEEE在DIX规范基础上进行了修改而制定的标准,电子IEEE只是美国的电气和电子工程师协会,所以IEEE802.3并不是国际标准,只有当国际标准化组织ISO(International Standards Organigation)接受而成为ISO8802-3标准后,才能正式成为国际标准,于是以太网就获得快速的发展。严格来讲,以太网与IEEE802.3标准并不完全相同,但人们通常都将IEEE802.3就认为是以太网标准。
(2)介质访问控制协议CSMA/CD
最能表证以太网通信的基础就是CSMA/CD。在802.3以太网MAC(介质访问控制)层中,对介质的访问控制采用了载波监听多路访问/冲突检测协议CSMA/CD其主要思想可用“先听后说,边说边听”的形象来表示。“先听后说”是指在发送数据之前先监听总线的状态。在以太网上,每个设备可以在任何时候发送数据。发送给在发送数据之前先要检测通信信道中的载波信号,如果没有检测到载波信号,说明没有其他站在发送数据,或者说在信道上没有数据,该站可以发送。否则,说明信道上有数据,需等待一个随机的时间后再重复检测,直到能够发送数据为止。当信号在传送时,每个站均检查数据帧中的目的地址字段,并依此判定是接受该帧还是忽略该帧。由于数据在网中的传输需要时间,总线上可能会出现二个和二个以上的站点监听到总线上没有数据而发送数据帧,因此就会发生冲突,“边说边听”就是指在发送数据的过程的同时检测总线上的冲突。冲突检测最基本思想是一边将信息输送到传输介质上,一边从传输介质上接收信息,然后将发送出去的信息和接收的信息进行按位比较。如果二者一致,说明没有冲突;如果二者不一致,则说明总线上发生了冲突。一旦检出冲突以后,不必讲数据帧全部发完,CSMA/CD立即停止数据帧的发送,并向总线发送一串阻塞信号,让其总线上其他各线均能感知冲突已经发生。总线上各站点“听”到阻塞信号以后,均等待一段随机的时间,然后再去重发受冲突影响的数据帧。这一段随机的时间通常由网卡中的一个算法来决定。CSMA/CD的优势在于站点无需依靠中心控制就能进行数据发送。当网络通信量较小的时候,冲突很少发生,这种介质访问控制方式是快速而有效的。当网络负载较重的时候,就容易出现冲突,网络性能也相应降低。
这种通信方式,对通信量大而且没有实时性要求的场合是非常有效的,因此在办公自动化上应用非常适合;而在控制领域上应用时,由于不能满足实时性和时间上的确定性的要求,就出现了问题,必须采取相应措施才能奏效,这在以后有关实时以太网的讲座中,再行讲解。
(3)冲突退避算法
在802.3以太网中,当检测到冲突检测出来以后,就要重发原来的数据帧。冲突过的数据帧的重发又可能再次引起冲突。为避免这种情况的发生,经常采用错开各站的重发时间的办法来解决,重发时间的控制问题就是冲突退避算法问题。
最常用的计算重发时间间隔的算法就是二进制指数退避算法。其本质上是根据冲突的历史估计网上信息量而决定本次应等待的时间。按此算法,当发生冲突时,控制器延迟一个随机长度的间隔时间,如下式所示:
TN=R×A×(2N-1)
式中:R为0~1的随机数;A是时间片(可选总线循环一周的时间);N是连
总线专题FFHS 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)