计算机毕业论文,毕业论文,毕业设计 毕业论文免费检测 知网论文检测

基于TCP/IP的嵌入式Internet技术研究与设计

时间:2011-03-16 11:18来源: 骆驼毕业论文网 作者:admin
嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪的专用计算机系统。网络化已成为目前嵌入式系统发展的一个重要趋势,研究嵌入式系统与Internet接入方法,实现远程数据采集、远程监控等功能具有重要的现实意义和经济价值。 针对嵌入式系统接入In

QQ交谈计算机毕业设计,毕业设计,毕业论文,计算机毕业论文

 

嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪的专用计算机系统。网络化已成为目前嵌入式系统发展的一个重要趋势,研究嵌入式系统与Internet接入方法,实现远程数据采集、远程监控等功能具有重要的现实意义和经济价值。
    针对嵌入式系统接入Internet的要求,在介绍了当前国内外几种主要解决方案,通过对标准的TCP/IP协议分析,并结合微处理器的特点,给出了一种在Sumsung S3C2410上控制网络控制芯片CS8900A并实现Internet接入的方案。
 文中从硬件与软件两方面对系统进行分析设计,详细介绍了网络控制芯片CS8900A的结构原理,并着重论述了基于ARM微处理器的嵌入式操作系统Linux的移植,通过在Linux上移植CS8900A驱动来实现嵌入式TCP/IP协议栈,最后对系统进行功能测试。从得到的实验数据表明系统是可行的,符合设计的要求。


嵌入式技术已经无处不在,从随身携带的mp3、语言复读机、手机、PDA到家庭中的智能电视、智能冰箱、机顶盒,再到工业生产、娱乐中的机器人,无不采用嵌入式技术。2004年,全球嵌入式系统产品的产值已达2000亿美元,国内嵌入式软件的产值也达到 600亿人民币[1]。目前,嵌入式系统产品的研制和应用已经成为我国信息化带动工业化、工业化促进信息化发展的新的国民经济增长点。随着消费家电的信息化、智能化,嵌入式技术更显重要[2]。
另一方面,近几年来Internet技术的发展已使人类实现异地信息共享的愿望成为了现实。而如何实现嵌入式设备与Internet的结合,使信息的存取与获取更快捷、方便则又成为人们的进一步希望。这就是嵌入式网络技术得以发展的背景,目前不少国家的科研机构和各大公司纷纷加入嵌入式Internet技术的研究行列。可以预言,嵌入式设备与Internet的结合代表着嵌入式系统和网络技术的未来,随着Internet的迅速发展和廉价微处理器的出现,嵌入式系统将在日常生活里形成更大的应用领域,所以开展嵌入式Internet方面的研究是很有必要且具有重大应用价值。
1.2  技术研究现状
1.2.1  嵌入式微处理器现状
嵌入式微处理器的基础是通用计算机中的CPU。在实际应用中,将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减小系统体积和功耗。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。嵌入式处理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等。其中以ARM应用最为广泛。
ARM(Advance RISC Machines)是微控制器行业英国一家著名公司,设计了大量高性能、廉价、耗能低的RISC处理器,具有性能高、成本低和能耗低的特点。ARM处理器,不论是在PDA, STB, DVD等消费类电子产品中,还是在GPS、航空、勘探、测量等工业中得到了广泛的应用[3-5]。


回顾Internet技术的发展和应用历史,Internet经历了以下三个阶段[6]:
第一阶段:1980年-1990年Internet发展的萌芽阶段。解决各种计算机的联网和信息交换,采用TCP/IP协议交换文件和信息,主要解决专业领域如银行、军用系统采用不同操作系统的大、中、小型计算机的联网问题,这时并不称之为Internet,TCP/IP网络仅是少数计算机专家的概念,这是Internet发展的萌芽阶段。   
第二阶段:1990年-2000年,PC(Person Computer)作为客户机,Internet卷席全球。基于TCP/IP协议网络的email和www的普遍应用,Internet互联网被大众接受,形成了Client/Server体系结构(客户机/服务器),进而发展为Browser/Server结构(浏览器/服务器),这时的客户机已是广泛普及的PC,而服务器仍是相对复杂的,价格昂贵的超级计算机,即我们所谓的“胖服务器”。
第三阶段:2000年-2010年嵌入式Internet时代阶段。随着嵌入式技术飞速发展,嵌入式片上系统即可构成服务器,被称为“瘦服务器”。预测未来Internet将向何处去,这是很多专家关心的问题。在这阶段“将会产生比PC时代多成百上千倍的瘦服务器和超级嵌入式瘦服务器,这些瘦服务器将与我们这个世界你能想到的各种物理信息、生物信息相联接,通过Internet网络自动、实时、方便、简单地提供给需要这些信息的对象。由此可见,如何设计和制造嵌入式瘦服务器、嵌入式网关和嵌入式因特网路由器已成为嵌入式Internet时代的关键问题和核心技术。
目前Internet技术处在发展的第三阶段,其主要特征是Internet技术与嵌入式技术的融合,采用基于TCP/IP的嵌入式技术已成为研究的主要方向,本设计中的嵌入式Internet接入方法则是研究基于嵌入式TCP/IP协议下的Internet接入方式。
1.3  论文研究内容
本论文对嵌入式Internet的功能和构成进行了研究,针对目前嵌入式系统对Internet接入的需求,采用ARM公司的32位微处理器(ARM9)和CIRRUS LOGIC公司的10M应网络接口芯片CS8900A构建嵌入式网络平台。主要进行了以下研究工作:
 (1) 嵌入式TCP/IP协议原理分析;
(2) 嵌入式Linux交叉环境的建立;
(3) 在S3C2410上移植CS8900A系列芯片的驱动;
最后,在目标板上移植嵌入式操作系统,并实现网络控制芯片CS8900A驱动,从而提供了TCP/IP协议并达到嵌入式Internet接入的要求。
 
第2章  系统功能分析及方案设计
2.1  嵌入式TCP/IP协议分析
嵌入式系统接入Internet,则必须实现TCP/IP协议。TCP/IP协议及其应用是一项复杂的系统工程。它的建立是经过缜密的设计过程,全套协议的实现是比较复杂的。在实际应用中可以根据系统的功能特点,对标准TCP/IP协议进行精简,即可以不实现完整的TCP/IP协议簇。
2.1.1  TCP/IP协议
 TCP/IP是英文Transmission Control Protocol/Internet Protocol的缩写,“传输控制协议/网际协议”[7]。 TCP/IP是Internet使用的一组协议,用于保证Internet上不同系统之间的互连及其数据传输通信。它并不完全遵照OSI的七层参考模型。TCP/IP协议采用了4层的层级结构(如图2-1),每一层都使用它的下一层所提供的服务来完成自己的需求。
 
图2-1 TCP/IP协议层次图
(1)应用层
应用层包含了所有的高层协议,如简单电子邮件传输、文件传输协议、网络远程访问协议等。
(2)传输层
传输层提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
TCP(Transport Control Protocol传输控制协议),它是一个可靠的,面向连接的协议,允许从一台机器发出的字节流准确无误地递交到互联网上的另一台机器上。它


的协议,主要用于“不想要TCP的序列化或者流控制功能,而希望自己提供这些功能”的应用程序。UDP广泛应用于“只需要一次的,客户-服务器类型的请求-应答查询”,以及那些“快速递交比精确递交更加重要”的应用,比如传输语音或者视频。
(3)网络层
网络层主要处理数据报在网络中的活动。在TCP/IP协议中,网络层协议包括IP协议,ICMP协议以及IGMP协议。IP协议是TCP/IP协议的核心协议,它使各种异构网络之间的通信成为可能。
ICMP协议的主要作用是传递差错报文以及其它信息,比如说网络目标不可达信息,时间戳请求报文等。在调试中可用Ping程序测试服务器和终端之间的物理连接是否正常。
IGMP(Internet Group manage protocol,因特网组管理协议),它主要用于支持主机和路由器进行组播,IGMP能够让一个物理网络上的所有系统知道主机当前所在的多播组,多播路由器需要这些信息以便知道多播数据报应该向哪些接口转发。在嵌入式Internet接入技术中,很少需要采用组播的方式进行通信。在通常情况下,嵌入式Internet的设计中可以不考虑实现IGMP协议。
(4)网络接口层
网络接口层通常包括设备驱动程序和对应的网络接口卡。它们一起处理与电缆的物理接口细节。TCP/IP协议是极其灵活的,因为几乎所有的底层技术都可以用于传输TCP/IP的通信。在本设计中,接入Internet采用的是以太网接入方式,所以首先必须在网络接口层实现以太网卡的驱动程序。
2.1.2  TCP/IP协议特点
由于嵌入式网络的应用环境决定了嵌入式TCP/IP协议栈通常应用于特殊领域,它不可能像标准TCP/IP协议一样提供完整的协议体系。所以,嵌入式TCP/IP协议区别于标准的TCP/IP,它的特点有[8]:
(1)易裁剪

 

嵌入式Internet是近年来发展起来的一项新兴概念和技术,国外许多大公司包括Emware、Microchip、Philips、Motorola等在内的数十个公司联合成立了“嵌入式Internet联盟(Embedded the Internet Consortium,ETI)”,来专门讨论和制定嵌入式Internet领域的标准和开发相关技术,共同推动这一市场。
在许多嵌入式系统开发商和供应商,正在不同层面上积极参与嵌入式技术的研究与开发,形成了一些较为成熟的方案和产品,以下对目前几种较为成熟的嵌入式系统接入Internet进行分析[9]。
(1)使用EMIT 技术接入Internet
EMIT(Embedded Micro Internetworking Technology) 是由Emware公司提出的一种嵌入式Internet 接入技术如图2-2。在该接入方案中,首先利用轻量级总线如RS232、RS2485、CAN将多个嵌入式设备组网,每个嵌入式设备中驻留通信程序Em2Micro,监测嵌入式设备中预先定义的各个变量并将结果反映到EmGateway网关,EmGateway同时作为普通的Web服务器接受Web客户机的访问。
Microchip公司和Philips公司都在此基础上有相关的产品开发平台。由于复杂的网络协议是通过EmGateway在PC机上实现的,应用系统MCU只使用较简单的emNet协议,因此该方案对MCU的要求较低。该方案的缺点是:
①应用系统设计工程师必须熟悉emNet协议和相关的接口;
②软硬件设计的工作量较大;
③应用系统的单片机处理emNet协议要占用一定的系统资源。
(2)采用PC机处理TCP/IP协议的MCU+WebChip+PC网关接入方案
WebChip是独立于任何MCU的专用网络控制芯片,MCU应用系统通过WebChip网络芯片与Gateway连接,然后经Gateway接入Internet ,如图2-3所示。WebChip内部固化了与EmGateway和OSGi协议兼容的MCUNet协议,为MCU提供了17条指令实现双方的通信,并且可以选择与网关的通信方式MCU使用方的通信,并且可以选择与网关的通信方式。MCU使用MCUNet协议就像设计UART时使用RS2232一样简单。
 但本方案也存在如下缺点:首先它需要依赖PC机做网关进行协议转换,在嵌入式系统分布松散的情况下,专用网络布线极为不便;其次需要在PC机上安装专门的协议转换软件,该软件通常由专门的第三方软件商提供,费用一般较高。


S3C2410通过/SBHE、/IOW和/IOR等控制信号线实现对CS8900A的工作方式控制和读写操作。当CS8900A有硬件复位或软件复位时,它将默认成为8位工作模式。因此,要使CS8900A工作于16位模式,系统须在访问之前提供给总线高位使能管脚(/SBHE)一个由高到低、再由低到高变化的电平信号,这在网络驱动程序中予以实现。数据的接受采用中断方式,由于CS8900A和S3C2410的中断电平是相反的,所以,中断信号线间需接一个非门。
CS8900A与S3C2410之间的数据传输采用的是默认的I/O模式,因此,读写管脚/MEMW和/MEMR被置高,以关闭Memory方式。在此模式下,用3根地址线就可以实现对所有寄存器的访问。如图3-6所示,管脚SA1、SA2和SA3对应接到S3C2410的地址线A1、A2和A3上。
CS8900A通过一个带厄流线圈的隔离变压器将CPU要发送的数据发送到网络上;接受数据时,由网络传来的数据也经过隔离变压器。加隔离变压器的作用主要是将外部线路与CS8900A隔开,防止干扰和烧坏元器件,实现带电的插拔功能。

 

网络协议实现时调用。在编写驱动程序之前,需要了解CS8900A的几个主要工作寄存器:
(1)LINECTL(0112H):决定CS8900A的基本配置和物理接口。初始值为00d3H,选择物理接口为10Base-T,并使能设备的发送和接受控制位。
(2) RXCTL(0104H):控制CS8900A接受待定的数据报。初始值为0d05H,接受网络上的广播或者目标地址同本地物理地址相同的正确数据报。
(3)RXCFG(0102H):控制CS8900A,接受特定的数据报后会引发中断。可控制为0103H。
(4) BUSCT(0116H):控制芯片的I/O接口的一些操作。设置初始值为8017H,打开CS8900A的中断总控制位。
(5)ISQ(0120H):ISQ是CS8900A的中断状态寄存器,内部映射接受中断状态寄存器和发送中断状态寄存器的内容。
(6)PORT0(0000H):发送和接受数据时,MCU通过PORT0传递数据。
(7)TXCMD(0004H):发送控制寄存器,如果写入数据00C0H,网卡在全部数据写入后开始发送数据。

 

相连接,把需要调试的程序编译成二进制文件通过JTAG仿真器下载到测试板的SDRAM中就可进行相关调试了。
另外在调试中,本系统还采用了串口调试的方法。测试板上的串口与主机上的串口相连,通过测试板上的串口能打印很多调试信息,以帮助问题分析。
5.2  系统测试过程
在完成了U-Boot,uImage和ramdisk的设计和裁剪以后,嵌入式开发平台的建立就基本完成了。
用JTAG工具将上面的文件下载到flash中,其中U-BOOT下载到sector 1-7,开始地址为0x00000000,uImage下载到sector 8-102,开始地址为0x0001c000,ramdisk下载到sector 103-230,开始地址为0x0019800。以上的地址是在U-BOOT移植过程中规划好的,可以根据自己存贮器的实际地址来设定具体的数值。
然后打开超级终端,波特率设置为115200,下面从新启动设备,我们可以看到下面的信息:

 

参考文献
[1] 何小庆.嵌入式软件的最新发展[R].兰州:兰州大学 2006
[2] 周立功等.ARM嵌入式系统基础教程[M].北京:北京航天航空大学出版社,2005
[3] 马忠梅,马广云.ARM嵌入式处理器结构与应用基础[M].北京:北京航空航天大学出版社, 2002 
[4] ARM Limited.ARM Architecture Reference Manual[Z].Cambridge,2000
[5] SAMSUNG electronics Inc. S3C2410X 32-Bit RISC Microprocessor User’s Manual Revision 1.2 [Z]. South Korea,2003
[6] 吕京建.嵌入式因特网技术的兴起与前景[J].今日电子, 2000, 1(9):7-10.
[7] 谢希仁.计算机网络(第四版)[M].北京:电子工业出版社, 2003
[8] 郝洁,王慕坤,付金生.嵌入式TCP/IP技术研究与应用[J].哈尔宾理工大学学报,2004-4
[9] 蔡虔,涂燕琼.五种嵌入式Internet接入方案的研究分析[J].科技广场.2006-8
[10] Cirrus Logic Inc.CS8900A Data Sheet[Z].America,2001
[11] 周德新,张向利.Linux与嵌入式操作系统[J].桂林电子工业学院学报, 2000
[12] Sung-Woo Tak,Jong-Moon Son , Tae-Keun Kim. Experience With TCP/IP Networking Protocol S/W over Embedded OS for Network Appliance [J]. 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'05) 2005, 9-17~19.
[13] 曹程远.U-Boot在S3C2410上的移植[J].微型电脑应用,2005-7
[14] The Denx U-Boot and Linux Guide[z].http://www.denx.de/twiki/bin/view/dul/Manual,2000-04-12.
[15] 于明,范书瑞等.ARM9嵌入式系统设计与开发教程[M].北京:电子工业出版社,2006
[16] Karim Yaghmour.Building Embedded  Linux Systems[M].New York: Relly & Associate, 2000
[17] Yun-Chen Li Mei-Ling Chiang. LyraNET: A Zero-Copy TCP/IP Protocol Stack for Embedded Operating[J]. International Conference on Parallel Processing Workshops(ICPPW'99),1999,9-21
[18] 柴毅,王玉堂,陈禾.基于以太网数据采集与控制模块的设计与应用[J].计算机测量与控制,2004,第3期,158~160
[19] 黄国刚等.基于CS8900A的工业级嵌入式网络接口实现[J].计测技术,2005-01

 

 

本文内容只是论文部分简介,如需了解更多详情请咨询本站客服! QQ交谈计算机毕业设计,毕业设计,工程硕士论文,计算机毕业论文
毕业论文搜集整理:毕业论文网 计算机毕业设计 计算机毕业论文 毕业设计


顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
计算机毕业设计
计算机毕业论文
论文发表