面向arm的程序优化在嵌入式tcp/ip协议实现中的应用
发表:2023-08-29 12:08:39 阅读:49

随着嵌入式技术的发展,人们对系统的智能化、小型化的要求也越来越高。基于arm结构的微处理器以其高性能、低功耗、低价格等方面的优势被广泛应用于各种电子产品,特别是一些高端的嵌入式控制应用中,像在tcp/ip中采用atmel公司的at91rm9200微处理器,配合以太网物理层驱动芯片(dm9161)构建面向网络的嵌人式系统硬件平台,如图1所示。在此平台上,实现基于arm微处理器的嵌人式tcp/ip协议处理。

图1 基于网络的嵌入式系统硬件平台框图

基于arm的嵌人式系统直接面向以太网数据,典型的以太网数据封装格式如图2所示。根据以上的优化方法,在变量定义时需要考虑最佳的存储器布局,使得各种类型的变量能以32位的空间位基准对齐,对于功能函数中参加运算的数据应尽量采用32位的数据进行处理。

图2 典型的以太网数据封装格式

嵌入式tcp/ip协议的实现通常采用linx中的tcp/ip网络结构层次。tcp/ip协议实现网络层和控制层的arp/rarp,ip,icmp,tcp,udp等协议,直接为http,smtp,ftp,telnet等这样的应用层协议提供支持。每个系统都需要具体定义应用层程序和协议软件之间的接口。协议处理的一般流程如图3所示。协议处理过程中需要多次条件判断,对ip地址和tcp数据的校验和处理循环比较是无法避免的,因此可以充分利用“与0比较”的条件判断和“减到0”的循环来优化程序设计。

图3 协议处理流程框图

 

阅读此文的人还喜欢: