积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> CPLD/FPGA >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
一种用VHDL设计嵌入式Web Server的方案
 
作者:何 斌 罗文钦 吴桂清   来源:单片机与嵌入式系统应用    点击数:102   更新时间:2008-5-6
您可以添加到网摘 让更多人关注此文章:

    摘要:近几年嵌入式Internet开始迅猛发展,但绝大多数嵌入式Internet都使用微控制器和相应的软件来实现。本文介绍一种基于硬件来实现嵌入式Web Server的方案。该方案的核心思想是用VHDL语言来设计实现,并且用FPGA进行验证。

关键词:VHDL Internet协议 控制信息协议 数据报

最近几年随着Internet应用的迅猛发展,Internet的通信协议,特别是TCP/IP协议,已成为嵌入式Internet的主体构架;然而,仅仅使用嵌入TCP/IP协议对许我应用来说远远不够,它们要求更高层次的信息传输和交换方式。在原有嵌入TCP/IP协议基于上加入HTTP/1.1将构成一个功能较为简单的嵌入式Web Server,它可以接收和发送一些简单的数据和命令。如果再将这些嵌入通信协议和Web功能用VHDL来实现的话,将大大降低嵌入成本,满足嵌入式产品对Web功能的要求。

1 嵌入式Web Server中的协议裁减

嵌入式Web Server中用到的通信协议较多,若全部采用,将导致整个嵌入式Web Server异常复杂,而且费用显著增加。因此,为保证嵌入式Web Server最简化,必须对一些主要的通信协议进行相关的裁减,减小整个硬件设计的复杂性。

1.1 IP协议

IP在网络中主要实现2个基本功能:寻址和分段。IP可以根据数据报头中包括的目的地址将数据报传送到目的地。在此过程中,IP负责选择传送的通道。如果有些网络内只能传送小的数据报,IP可以将数据报重新组装并在报头域内说明。

    在嵌入式Web Server中,由于只需传送一些简单的数据和命令,数据报的长度很小,足以适合在任何网络中传送,因此对于分段的功能可以裁减不要。

IP数据包头如图1所示。

在IP数据包头中,服务类型是指一些服务质量的参数,这些参数用于在特定网络指示所需要的服务。而选项包括时间戳,安全和特殊路由,在数据包中可以没有。因此,为简化嵌入Web Server的复杂程度,这2个字段都可以忽略,而且不用作任何处理。标识是发送时用于帮助重组分段包的,段偏移量是指示这个段在数据报中什么位置。由于不采用分段功能,因此这些字段都无须考虑也不用作任何处理,而且标记字段第2位必须为1,表示是不可分段的。

1.2 ICMP协议裁减

ICMP协议用于报告在数据报过程中的错误,它在以下几种情况下发送ICMP消息:未达目的地、超时、参数总是、源拥塞、重定向、回送或回送响应、时间戳和时间戳响应、信息请求或信息响应。

由于嵌入式Web Server只是一个具有简单Web功能的模块,并且它对外部传感器和网络之间只是简单的数据传输和命令的发布;因此跟成本相比较而言,许多可靠性措施可以忽略不计,只考虑一些必要。在ICMP消息报告中,回送或回送响应消息、信息请求或信息响应消息在网络信息处理中至关重要,因此予以采用;其它消息报告可以忽略,保证嵌入式Web Server最简化。

1.3 TCP协议裁减

TCP,即传输控制协议,是一种面向连接的传输层协议。通过使用序列号和确认信息,TCP协议能够向发送方提供到达接收方的数据包的传送信息。当传送过程中出现数据包丢失情况时,TCP协议可以重新发送丢失的数据包,直到数据成功到达接收方或者出现网络超时为止。TCP协议还可以识别重复信息,丢弃不需要的多余信息。使网络环境得到优化。如果发送方传送数据的速度大大快于接收方接收数据的速度,TCP协议可以发送和接收的数据响应。TCP协议能够把数据传送信息传递给所支持的更高层次的协议或应用使用。

但在嵌入式Web Server中,考虑到实现的情况和复杂性,对于TCP协议,除了采用数据包传送机外,重新发送和数据流控制机制都可以忽略不计。因此在嵌入式Web Server中,只传送一些简单的数据和命令,而且数据量很少,因此,在系统中不会产生网络拥塞,只需在其它客户端或访问端上用流量控制机制就可以了。同时由于嵌入式Web Server功能简单,重新发送的可靠性不大;如果真的要求重发的话,可以与嵌入式Web Server重新进行连接,来完成传送任务。

2 硬件结构

由于TCP协议、IP协议和ICMP协议被简化,整个协议的处理只需由协议状态机来完成。它须负责接收IP数据报、做相应的检验和消息处理、协议解释、根据接收到的信息进行TCP状态的转换、构造IP发送数据报。

整个嵌入式Web Server的硬件结构如图2所示。嵌入式Web Server由本地网络协议处理器、TCP处理器、IP数据包接收和发送处理及存储器、嵌入式Web Server IP的地址寄存器、传感器数据采集接口组成。在嵌入式Web Server的传感器数据采集接口的数据直接传送到主页存储器中。

IP数据报处理检查数据报是否发送给嵌入式Web Server以及是否有效。

TCP状态机是一个简化的TCP连接过程,只有6个状态,不包括错误情况和错误处理。

HTTP的存储器包含了接收到的HTTP的报头。如果接收到的IP包体有一个有效HTTP载荷,那么HTTP/1.0协议解释器会搜索存储器寻找相应的回答。IP数据报构造器根据HTTP/1.0协议解释器搜索结果构造发送的包体。其中地址、端口号、确认号、序列号是根据接收到的数据包体产生的,而校验码是根据发送的数据产生。其它信息则是从数据接口和主页内存中形成的。

整个硬件设计采用了VHDL语言,采用Xilinx的FPGA进行仿真。

3 VHDL设计

整个嵌入式Web Server的具体的VHDL设计在这里不多说明,只介绍其核心的TCP状态机的状态转移顺序和转移条件的设计。整个协议状态机有6种状态,还可以分离出6种事件,这些事件的发生可以引起状态间相互转换,如图3所示。

SYN表示连接请求;ACK(SYN)表示连接确认;RST表示拒绝建立连接;FIN(CLOSE)主动关闭连接请求;ACK(FIN)关闭连接确认;TIME OUT计时等待结束。

TCP状态机的VHDL的设计代码省略。

4 结论

嵌入式Web Server的网络连接既可以采用以太网方式,也可以采用蓝牙技术,这可以根据需要来选定。采用硬件来解决嵌入式Web Server,关键在于它的复杂度很低,而且可以根据需要嵌入到相应的运用系统的芯片中去,减少了开发时间,降低了成本。采用VHDL使设计移植更加方便。



相关文章
· S3C2410X在无线宽带通信网中的应用[31]
· 浅谈嵌入式软件系统设计中的正交性[27]
· 一种嵌入式微调度器的实现方法[34]
· 嵌入式与PLC的区别[42]
· 基于嵌入式的温湿度模糊控制系统的实现[26]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
那一年我做了鸭子2
那一年我做了鸭子1
等你十年(下)
等你十年(上)
什么是打标机
★★★成都嵌入式培训-FPGA开发周
英飞凌在功率电子市场表现抢眼,以高于
LED奥运会大放光芒 功率
三星同意将Symbian股份出售给诺
英特尔收购Opened H
 
热门下载 [更多]
 
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
[ ] 实用电源电路集锦
 
论坛新帖 [更多]
 
新店开业,部分开发板&元器件特...
[原创]VB编程RS232串口...
红外摄像机控制故障分析与处理方...
红外防水摄像机在智能视频监控中...
步进电机不用驱动芯片能驱动吗?...
我要选一块双串口,带AD的单片...
[分享]运放和功放的区别是什么...
4×4矩阵式键盘的课程设计...
做过高速信号滤波的高手帮忙...
做视频信号放大器,各位有什么好...

 
赞助商 [更多]
 


ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网