嵌入式系统中IP协议用ASIC器件电路设计
扫描二维码
随时随地手机看文章
引 言
为了实现网络信息处理,嵌入式系统中必须具有强大的网络连接功能。嵌入式系统的网络连接功能不仅需要传输信息,同时还必须具有相应的信息识别能力,以提高系统的网络安全性。
近年来在嵌入式系统和SOC(片上系统)技术发展的推动下,嵌入IP协议的微处理器或单片机系统已经出现[3],为嵌入式网络技术的应用奠定了基础。但对于工业设备来说,特别是对于工业生产中使用的仪器仪表,采用软件嵌入IP协议存在无法并行处理和成本过高的缺点。因此,采用硬件实现IP协议具有重要的意义。
IP硬件电路设计有嵌入处理器和ASIC两种方法。使用嵌入处理器的方法设计IP协议时,需要选择相应的处理器和附加电路,并根据所嵌入的处理器编制相应软件实现IP协议。这种方法可以采用已有的IP协议软件,软件实现比较方便。使用ASIC技术设计IP协议属于硬件实现IP方法,IP协议的执行全部为硬件执行。这种实现方法具有的优点就是IP协议的执行不受软件干扰,具有一定的IP协议层抗干扰能力。ASIC实现IP协议实现的是一个专用数字硬件电路,只需要通过相应的控制信号就可以实现IP协议的功能,具有比较高的性能价格比。
针对工业设备对IP协议的需要,本文设计并实现了一个能完成IP协议功能的ASIC器件。对于工业控制设备来说,这种器件就是一个实现IP功能的专用器件,只要把要发送的数据传送给该器件,就可以实现通信过程与控制系统并行操作。任何数字化的工业设备,都可以使用这个IP协议器件直接连接到基于IP的网络。
一、 协议分析与IP电路结构设计
IP协议的功能,是对来自上层协议的数据进行打包和解包处理,通过数据报在一个个IP协议模块间传送,直到数据报到达目的模块[2]。互联网网络中每个主机和网关设备上都有IP模块,数据报在一个个模块间通过路由处理网络地址传送到目的地址。IPv4的数据报报头格式如图1所示。IP在提供网络层服务时,采用了统一的报头,以使处于各子网中的IP都能根据报头对数据作出相应的处理。
版本号报头长度服务类型总长
标识 DFMF
生命权协议报头校验和
源地址
目的地址
选项(不定)
图 1 IP协议报头格式
IP中使用以下4个关键技术实现数据报传输:
(1)服务类型(ToS)。ToS是一个参数集,代表Internet能够提供的服务,用于指定用户所希望得到的服务质量。服务类型由网关使用,可用于特定的网络或是用于下一个要经过的网络,也可用于下一个要对数据报进行路由选择的网关上选择实际传送的参数。
(2)生存时间(TTL)。生存时间是用户设置的数据报在网络传输过程中的保存时间。生存时间由发送者设置,由所经过的路由处理。如果在到达目的节点之前生存时间已经为零,则IP就会自动抛弃此数据报。
(3)选项(opTIONs)。选项包括时间戳、安全和特殊路由要求等。对于控制函数来说选项是重要的,但对于通常的通信来说一般没有必要。
(4)报头校验码(checksum)。设置报头校验码的目的,是保证数据的正确传输。如果校验出错,IP将抛弃整个数据报。必须注意,与一般工业控制系统使用的简单通信协议不同,IP协议发现校验码出错后,并不立即通知发送端,而是放弃刚刚接收到的一段报文,把纠正报文出错的任务留给TCP协议完成。这种方式不仅提高了通信效率,还可以简化传输质量,保证程序。
在设计IP协议ASIC硬件电路中,有几个问题需要考虑:
(1)应用系统的核心处理器,通过控制信号实现对IP协议器件的使用操作,因此,必须考虑如何通过硬件电路实现核心处理器与IP硬件电路之间的数据交换。
(2)如果IP硬件应用于终端设备(例如工业控制系统的控制设备)而不是作为交换节点,IP协议中有关路由选择处理的部分可以省略。
(3)为保证IP协议的健壮性,电路设计中必须十分注意电路并行协议操作中不同电路部分的延时不均匀问题。所有功能电路的延时不超过允许范围,必要时要牺牲速度,保证协议操作的正确性。
(4)如果每次传输的数据量不大(例如作为工业设备组成的工业网络控制系统),可以不考虑IP协议中的报文分片处理。应用系统只要使每次发送的数据长度符合一个IP数据报的长度要求,就能正确无误地利用IP网络传输数据。这样不仅可以简化硬件电路,还能节省缓冲存储器的容量。
根据以上讨论,IP专用电路的设计,实际上就是通过计数器、寄存器、RAM来实现外部握手和内部流水线处理电路。由于接收与发送互相独立,电路设计中可以把接收和发送分为两个各自独立的部分。由此,IP协议ASIC专用电路结构框图如图2所示。
二、 IP协议ASIC电路握手操作
IP协议器件中,发送电路的任务是对要发送的数据进行加IP报头的处理,再把打好包的IP数据报发送给MAC层。接收电路的任务是对接收到的IP报进行报头校验和拆报处理,最后把数据传输给微处理器系统。
设计IP协议硬件电路,一个重要的问题就是数据报的接收和发送机制。使用硬件实现IP协议的关键有两个:一个是流水线操作,另一个是数据存储方式。
流水线操作是指IP协议的实现操作采用流水线方式,各操作步骤实行并行处理。作为网络层协议,IP协议操作的速度取决于两个因素:一个因素是数据报存储方式,另一个因素是MAC层的收发速度。从IP层所处的位置看,由于IP网络的接入网以全双工方式工作,作为硬件器件的工作时钟必须以发送和接收时钟为准。本设计中,以应用系统调用IP协议信号作为发送电路操作允许信号,MAC层调用IP协议信号作为发送和接收触发同步信号,采用同步触发时钟并行控制的技术,实现了IP协议操作步骤的流水线并行处理。