(计算机应用技术专业论文)基于嵌入式系统的tcpip协议栈的研究.pdf_第1页
(计算机应用技术专业论文)基于嵌入式系统的tcpip协议栈的研究.pdf_第2页
(计算机应用技术专业论文)基于嵌入式系统的tcpip协议栈的研究.pdf_第3页
(计算机应用技术专业论文)基于嵌入式系统的tcpip协议栈的研究.pdf_第4页
(计算机应用技术专业论文)基于嵌入式系统的tcpip协议栈的研究.pdf_第5页
已阅读5页,还剩64页未读 继续免费阅读

(计算机应用技术专业论文)基于嵌入式系统的tcpip协议栈的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 嵌入式系统的i n t e r n e t 网络化的研究与应用是近几年来嵌入式应用领 域的一个研究热点。嵌入式系统与人们的生产、生活关系最为密切并j 爿j 有 无尽的信息资源,通过嵌入式系统i n t e r n e t 网络化可以实现这些信息的共 享。嵌入式系统的i n t e r n e t 网络化的前提是在嵌入式系统中实现t c p i p 协 议栈。 本文针对应用广泛的a r m 7 系列的处理器为核心的嵌入式系统,设计 了一种适合该系统的轻型t c p i p 协议栈。开发平台采用了a r m 公司集编 辑、编译、仿真和调试于一体的的a d s1 2 软件。硬件平台主要由p h i l i p s 的l p c 2 1 1 4 组成。网络接口采用了l p c 2 1 1 4 的串口。 首先,在分析国内外嵌入式t c p i p 协议栈研究现状的基础上,指出 了嵌入式t c p i p 协议栈存在的主要问题。在深入研究了嵌入式系统和 t c p i p 协议栈基本原理后,对传统的t c p i p 协议栈进行剖析、改进,并 提出了一种基于嵌入式系统的t c p i p 协议栈方案。本方案提出了“零拷 贝”的存储器管理方法,对i p 封装、分用、重组进行基于嵌入式系统的优 化设计,提出了适合嵌入式系统的t c p 状态机的方法、确认和重传机制。 其次,本论文也从另外一个角度对嵌入式网页服务器进行了研究,通 过动态网页可以远程对嵌入式系统进行监控。 最后用a d s1 2 完成了嵌入式t c p i p 协议栈软件设计、数据结构描述, 并对其进行了测试验证。 本文的工作为t c p i p 协议栈引入了新的思路,研究的嵌入式t c p i p 协议栈具有广泛的应用前景。 关键词t c p f l p :协议栈;嵌入式系统;a r m 7 ;网页服务器;串口 燕山大学上学硕士学位论文 a b s t r a c t i nr e c e n ty e a r s ,r e s e a r c ho nc o n n e c t i n ge m b e d d e ds y s t e mw i t hi n t e r n e t h a sb e c o m eo n eo f t h ef o c u s e si na p p l i c a t i o n so fe m b e d d e ds y s t e m e m b e d d e d s y s t e mi sc l o s e dt op r o d u c t i o na n dl i f eo fh u m a nb e i n ga n di to w n su n l i m i t e d i n f o r m a t i o nr e s o u r c e s t h ei n f o r m a t i o nc a nb es h a r e dt h r o u g he m b e d d e d s y s t e mw i t hi n t e r n e t t h ei m p l e m e n t a t i o n o ft c p i pp r o t o c o ls t a c ki n e m b e d d e ds y s t e mi st h ei m p l e m e n tp r e m i s eo fe m b e d d e di n t e r n e t t h i sp a p e rd e s i g n sal i g h tt c p i pp r o t o c o ls t a c kw i t ha r m 7s e r i e s m c u ( m i c r oc o n t r o lu n i t ) ,w h i c hi ss u i t a b l e f o re m b e d d e ds y s t e m i ta d o p t s a r ma d s1 2w h i c hi n t e g r a t e dw i t he d i t o r , c o m p i l e r , e m u l a t o ra n dd e b u g g e r a st h ed e v e l o p m e n te n v i r o n m e n t t h eh a r d w a r ep l a t f o r mm a i n l yi n c l u d e s l p c 2 11 4o f p h i l u sa n dt h en e ti n t e r f a c ea d o p t si t ss e r i a li n t e r f a c e f i r s t l y ,o nt h eb a s i so fa n a l y z i n gt h ep r e s e n ts t a t u so ft c p i pp r o t o c o l s t a c k ,t h i sp a p e rp o i n t so u tt h em a i np r o b l e mo fe m b e d d e dt c p i pp r o t o c o l s t a c k a f t e rad e e pr e s e a r c ho nt h eb a s i ct h e o r yo fe m b e d d e ds y s t e ma n d t c p i pp r o t o c o ls t a c k , t h ep a p e ra n a l y s e sa n di m p r o v e st h et r a d i t i o n a l e m b e d d e dt c p i pp r o t o c o ls t a c ka n dp r e s e n t st h es t r a t e g yo ft c p i pp r o t o c o l s t a c kb a s e do ne m b e d d e ds y s t e m t h i ss t r a t e g yb r i n g sf o r w a r d n i l - c o p y ” m e m o r i z e rm a n a g e m e n tm e t h o d ,o p t i m i z e si pe n c a p s u l a t i o n , d e m u l t i p l e x i n g a n dr e a s s e m b l yb a s e do ne m b e d d e ds y s t e m , p r e s e n t st h em e t h o do ft c ps t a t u s m a c h i n eo ne m b e d d e ds y s t e m , c e r t i f i c a t i o na n dr e t r a n s m i s s i o nm e c h a n i s m s e c o n d l t h ee m b e d d e dw e bs e r v e ri sa l s os t u d i e df r o ma n o t h e rp o i n to f v i e w i tc a nm o n i t o rl o n gd i s t a n c ee m b e d d e ds y s t e mt h r o u g hd y n a m i cw e b f i n a l l y , t h ep a p e ra c c o m p l i s h e dt h es o f t w a r ed e s i g na n dd a t as t r u c t u r e d e s c r i p t i o nw i t ha d s1 2a n dt h et e s tw a sa l s om a d e an e ww a yw a si n t r o d u c e dt ot h ef i e l d so ft c p i pp r o t o c o ls t a c ks y s t e m h a b s t r a c t t h r o u g ht h i sp a p e r t h ep r o p o s e de m b e d d e dt c p f l pp r o t o c o ls t a c kh a sg r e a t a p p l i c a t i o np o t e n t i a l k e y w o r d st c p i p ;p r o t o c o ls t a c k ;e m b e d d e ds y s t e m ;a r m 7 ;w e bs e r v e r ; s e r i a li n t e r f a c e m 燕山大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文基于嵌入式系统的t c p p 协议栈的研究,是本人在导师指导下,在燕山大学攻读硕士学位期间独立 进行研究工作所取得的成果。据本人所知,论文中除已注明部分外不包含 他人已发表或撰写过的研究成果。对本文的研究工作做出重要贡献的个人 和集体,均已在文中以明确方式注明。本声明的法律结果将完全由本人承 担。 作者签字前基,爱 日期:工。箔年j 月扩日 燕山大学硕士学位论文使用授权书 基于嵌入式系统的t c p i p 协议栈的研究系本人在燕山大学攻读 硕士学位期间在导师指导下完成的硕士学位论文。本论文的研究成果归燕 山大学所有,本人如需发表将署名燕山大学为第一完成单位及相关人员。 本人完全了解燕山大学关于保存、使用学位论文的规定,同意学校保留并 向有关部门送交论文的复印件和电子版本,允许论文被查阅和借阅。本人 授权燕山大学,可以采用影印、缩印或其他复制手段保存论文,可以公布 论文的全部或部分内容。 保密口,在 年解密后适用本授权书。 本学位论文属于 不保密曰。 ( 请在以上相应方框内打“”) 作者签名:考汹强日期:。i 年月g 日 导师签名 川习日期捌6 年月7 日 第1 章绪论 第1 章绪论 随着因特网应用的日益普及,信息技术迅猛发展,信息共享的程度不 断提高,人们已经进入了信息时代,i n t e r n e t 已经进入到于家万户,成为人 们工作和日常生活中不可缺少的重要组成部分。人们可以在网上浏览网页、 收发电子邮件、传输文件、视频会议等,这使得人们了解世界以及和外界 交换信息变的简单而又快捷 1 i 。与此同时,随着电子技术的发展,计算机 迈入了其另一个充满机遇的时代。后p c 时代。后p c 时代的到来,使得人 们开始越来越多地接触到一个新的概念嵌入式系统。在人们的生活中, 到处都充满着嵌入式系统,像手机、p d a 、车载g p s 系统、工业智能控制 等都采用了嵌入式系统【2 l 。不知不觉中,形式多样的嵌入式系统设备已经 开始继p c 机之后成为信息处理的一大工具,并且正在逐步形成一个充满 商机的巨大产业。因此,嵌入式i n t e r n e t 形成的范围将是巨大的,可以渗 透到世界的各个地方。同时,嵌入式i n t e r n e t 也将扩展i n t e r n e t 的应用范围, 使i n t e r n e t 遍布世界的各个角落而成为地球的“电子皮肤”。嵌入式i n t e r n e t 将会开启i n t e r n e t 时代的新纪元。 1 1 课题的背景和意义 i n t e r n e t 的兴起和迅猛发展,是上个世纪末期至今信息技术发展的最伟 大的成就之一。i n t e r n e t 技术实现了人们梦寐以求的全世界范围内大规模的 信息资源共享的宿愿。然而到目前为止,i n t e r n e t 上接入的计算机系统绝大 部分都是通用计算机系统,从而信息的共享也只是局限在这些数量有限的 计算机系统之间。 实际上在全球每年的c p u 产量中,9 5 以上都是嵌入式的微处理器, 可见嵌入式系统的应用比通用计算机系统广泛的多,比如一台通用计算机 的外部设备中就包含了5 1 0 个嵌入式微处理器,例如:键盘、鼠标、软 燕山大学工学硕士学位论文 驱、硬盘、显卡等均是由嵌入式微处理器控制的。嵌入式系统的应用更是 涉及制造工业、过程控制、通讯、仪器、仪表、汽车、航天、消费电子等 各个领域。他们提供一定的控制、显示、检测功能l l 。 人们为了把这些微处理器连接起来,产生了各种各样的连接协议,如 r s 2 3 2 、r s 4 8 5 、c a n 总线协议等,但是这些信息共享只是在局部范围内, 只是在小范围内的信息交流,互联的距离很短,这些协议与i n t e r n e t 所使 用的协议不兼容,无法与i n t e r n e t 互连互通,无法与外界无法实现信息共 享。如何将这些电子设备与i n t e r n e t 连接起来,从而使人们能够在异地通 过网络获取这些嵌入式设备的信息,并对他们进行控制,将是i n t e r n e t 发 展的一个重要方向 7 1 。 嵌入式系统与i n t e r n e t 的互连在各行各业都有广泛的应用前景。美国 贝尔实验室总裁a r u nn e t r a v a l i 的一批科学家对此做出了预测:嵌入式 i n t e r n e t 将会产生比p c 机时代多成百上千倍的瘦服务器和超级嵌入式瘦服 务器。这些瘦服务器将与人们所能想到的各种物理信息、生物信息相联接, 通过i n t e r n e t 网自动地、实时地、方便地、简单地提供给需要这些信息的 对象嘲。 嵌入式i n t e r n e t 技术具有广阔的应用前景,其应用领域如下。 ( 1 ) 智能公路交通管理、车辆导航、流量控制、汽车服务一,l o 】。 ( 2 ) 植物工厂特种植物工场,如实现野生名贵药材的远程监控培养和 种植,无土栽培技术应用,智能种子工程等。 ( 3 ) 虚拟现实( v i r t u a lr e a l i t y ,v r ) 机器人交通警察、门卫、家用机器 人等。 ( 4 ) 信息家电冰箱、空调等的网络化 1 1 , 1 2 】。 ( 5 ) i 业制冷冷库、中央空调、超级市场冰柜。 ( 6 ) v r 库房粮库、油库、食品库等。 ( 7 ) v r 精品店客户可以在i n t e m e t 上实时地看到存货状况。 ( 8 ) v r 家政系统水、电、煤气表的自动抄表,防火、防盗系统【1 3 i 。 ( 9 ) 2 1 2 业自动化目前已经有大量的8 、1 6 、3 2 位嵌入式微控制器在应 用中,网络化是提高生产效率、产品质量和减少人力资源的主要途径,如 第1 章绪论 制药工业过程控制、温度控制、电力系统、电网安全、电网设备监测、石 油化工系统 1 4 。 ( 1 0 ) p o s 网络及电子商务p o s 网络及电子商务包括公共交通无接触 智能卡( c o n t a c t l e s ss m a r tc a r d ,c s c ) 发行系统,自动售货机等【i 5 】。 ( 1 1 ) 环境工程与自然水文资料实时监测,防洪体系及水土质量监测、 堤坝安全,地震监测网,实时气象信息网1 1 6 1 0 随着各种技术在全世界的推广,嵌入式微处理器的数量将会大量增加。 小型嵌入式系统将是i n t e r n e t 发展的新支点,将来i n t e r n e t 中流动的信息很 大部分来自小型嵌入式系统。因此对嵌入式系统接入i n t e r n e t 的研究具有 重大的意义。 1 2 国内外研究现状 将嵌入式系统与i n t e r n e t 网络结合起来的思想很早以前就有了,主要 的困难在于:一方面,i n t e r n e t 网上的各种通讯协议对于计算机的存储器、 运算速度的要求比较高,而嵌入式系统以前大部分用的是8 位的微处理器, 如果要支持t c p i p 等i n t e r n e t 协议将占用大量系统资源,或根本不可能实 现:另一方面,在嵌入式系统的应用上,微处理器的型号、种类非常多, 要在不同的微处理器上实现相应的网络功能,设计人员要先熟悉该型号微 处理器结构特点和相应的汇编语言,所以使得将嵌入式系统与i n t e r n e t 结 合起来存在一定的难度【1 7 1 。但是随着1 6 位和3 2 位m c u 速度增快,存储 器容量增大,尤其是3 2 位m c u 的出现,使嵌入式系统和i n t e r n e t 的结台 成为可能。 国内外许多研究机构和国际标准化组织都致力于嵌入式i n t e r n e t 的研 究,如s w e d i s hi n s t i t u t eo f c o m p u t e rs c i e n c e 、e m b e d d e ds y s t e m sc o n f e r e n c e 、 嵌入式i n t e r n e t 联盟、中国单片机公共实验室、全国嵌入式系统学术交流 会。嵌入式i n t e r n e t 基本上已发展成为具有一定规模和相应理论的研究领 域。国内外的著名的公司有e m w a r e ,北京英贝多嵌入式网络技术有限公 司,他们使嵌入式i n t e r n e t 达到了实用阶段。 燕山大学工学硕士学位论文 嵌入式系统的i n t e r n e t 接入技术有如下三种技术模型。 ( 1 ) 直接接入技术模型 实现嵌入式系统直接与i n t e r n e t 相互连接,主 要是通过在嵌入式系统本身添加网络接口硬件,增加相应的软件支持,并 采用响应的接1 2 i 方案而实现的1 8 0 1 。其结构如图1 1 所示。 图1 - 1 直接接入结构 f i g u r e1 - 1f r a m e w o r ko f d i r e c tc o n n e c t i o n 随着硬件技术的发展和制造成本的降低,嵌入式微处理器的速度越来 越快,所集成的资源越来越多。这使得它能够集成网络接i ;3 部件,并且具 有足够的速度和资源实现网络协议。大部分3 2 6 4 位单片机采用了这种直 接接入技术。这种i n t e r n e t 直接接入技术模型使嵌入式系统直接与i n t e r n e t 相连,具有很大的灵活性,但是占用的系统资源比较多,对微处理器的要 求也很高。 ( 2 ) 嵌入式网关技术模型对于大量在一起的嵌入式设备来说,对每个 嵌入式系统都实现i n t e r n e t 功能,将造成巨大的资源浪费,这时候可采用 一个嵌入式网关接入【2 l 】。其结构如图1 2 所示。 图1 - 2 嵌入式网关接入结构 f i g u r e1 - 2f r a m e w o r ko f e m b e d d e dg a t e w a yc o n n e c t i o n 首先嵌入式系统和嵌入式网关连接通信,连接方式采用传统的r s 2 3 2 、 r s 4 8 2 、r s 4 8 5 、i i c 、s p i 、u s b 、c a n 、l i n 总线等轻量级网络协议。再 由嵌入式网关负责实现t c p i p 协议,并与i n t e r n e t 连接,完成嵌入式系统 4 第1 章绪论 和i n t e r n e t 的信息交互。嵌入式网关向嵌入式系统提供i n t e r n e t 或i n t r a n e t 通信和管理服务。如防火墙、协议转换、监视嵌入式设备的运行状态、向 外界提供w e b 服务器等。这种技术需要一个专门的嵌入式网关,而且网关 和嵌入式系统之间通信也会受到轻量级网络协议的制约。对于过于分散的 嵌入式系统而言,采用这种接入技术模型,成本将会增加。 基于这种接入技术模型,e m w a r e 公司提出了嵌入式微因特网互连技术 f e m b e d e dm i c r oi n t e r n e t w o r k i n gt e c h n o l o g y ,e m i t ) ,通过给嵌入式系统增 加轻量级协议软硬件,得到了众多软硬件厂商的支持,是当前具有前景的 嵌入式系统的i n t e r n e t 接入技术。 ( 3 ) 嵌入式系统+ t c p f i p 协议芯片t c p f i p 协议通过硬件固化到网络芯 片上,通过标准的输入输出口,可与绝大多数单片机相连。目前市面上出 售的网络芯片主要有韩国w i z n e t 公司的i 2 c h i pw 3 1 0 0 a ,美国s e i k o i n s t m m e m s 公司的i c h i p $ 7 6 0 0 等。这类芯片具有速度快,使用方便的特点。 但增加了硬件成本。 实现上述模型的关键技术是嵌入式t c p d p 协议栈。随着国内外各大厂 商都相继推出了各自的嵌入式t c p f i p 协议栈产品。其中既有针对3 2 位、 6 4 位高档嵌入式系统应用的协议栈,也有适合于中低档嵌入式应用的轻便 型的t c p i p 协议栈产品。其中比较有代表性的解决方案有下面几种。 ( 1 ) 风河公( w i n d r i v e r ) 的t c p f i p 协议栈风河公司是著名的嵌入系 统的开发商,以其v x w o r k s 嵌入式操作系统从而为人们所熟悉。该公司的 t c p i p 协议栈是v x w o r k s 嵌入式操作系统的一个部分,适合于工业、通讯 等高端应用。其协议栈以伯克利的4 4 版本的t c p f l p 协议栈为基础,并为 嵌入式环境的应用做了特殊的优化。在路由器、交换机等数据通信领域和 基站等无线通讯领域,应用比较广泛。 但商业的嵌入式t c p f i p 协议栈相当昂贵,并且很少提供源代码以供研 究。目前较为著名的免费t c p i p 协议栈有:l i n u x 系列t c p f i p 协议栈; i m p ( l i g h tw e i g h tt c p i ps t a n k ) :g l p ( m i c r o i p ) 。 ( 2 ) l i n u x 系列t c m p 协议栈支持完全的t c p i p 协议,但是要花费大 约1 0 0k br o m ( r e a do n l ym e m o r y ) 署l l 数十千字节的r a m ( r a n d o ma c c e s s 燕山大学工学硕士学位论文 m e m o r y ) t 2 2 1 。这对于大部分嵌入式系统是无法承受的,只能用在高档的服 务器上。 ( 3 ) 1 w i p由瑞典计算机科学研究所开发。顾名思义,1 w i p 属于轻量级 的t c p h p 协议栈,1 w l p 主要聚焦于削减代码大小及内存消耗。为了削减 计算和内存消耗,1 w i p 裁减了a p i ( a p p l i c a t i o np r o g r a m m i n gi m e r f a c e ) 的数 据拷贝功能。这使1 w i p 尽管支持完整的t c p i p 协议,但是只需要大约4 0 k b 的r o m 和数万字节的r a m ,适合用于嵌入式系统中【2 3 。 ( 4 ) g l p ( m i c r o i p ) 系瑞典计算机科学研究所a d a md u n k e l s 开发1 2 4 1 。 “i p 适合用于8 1 6 位微控制器上的小型t c p ,i p 协议栈,简单易用,资源 占用少是它的设计特点。它去掉了许多全功能协议栈中不常用的功能,而 保留网络通信所必要的协议机制。其设计重点放在i p 、i c m p 和t c p 协议 的实现上,将这三个模块合为一个有机的整体,而将u d p 和a r p 协议实 现作为可选模块。 l _ 3 课题研究内容及目标 本文在广泛调研和对大量中外文献分析的基础上,结合当前嵌入式系 统发展的前沿技术,对t c p i p 协议的基本原理和实现进行深入的分析,主 要完成以下几个方面的研究工作。 首先,通过学习嵌入式系统的基本原理和t c p i p 协议栈的相关协议, 提出了将它们相结合实现嵌入式系统的i n t e m e t 。本文采用p h i l i p s 的以 a r m 7 t d m i s 为内核的单片机l p c 2 1 1 4 ,重点研究其微处理器体系结构 和外设接口:研究分析t c p i p 协议栈的相关协议。 其次,对于嵌入式t c p h p 协议栈提出解决方案。其中重点解决了嵌入 式系统“零拷贝”的存储器管理方案,网络层基于嵌入式系统的协议优化 方法和重组算法,传输层基于嵌入式系统的状态机优化方案、确认和重发 机制。 然后,在深入研究h 1 v r p 协议的基础上,提出动态网页的设计方法。 并针对嵌入式系统的特点,提出了存储网页的虚拟文件系统方案。 6 星! 兰丝笙 最后,实现上述中的解决方案,并与普通的t c p i p 协议栈比较,充分 说明本设计方案的有效性。 1 4 论文结构 全文共分五章。 第1 章首先分析了课题的研究意义和研究背景,然后对嵌入式t c p i p 协议栈的国内外研究现状进行了综述,最后对本文的研究内容、研究目标 和预期研究结果进行了概述,多层次放映了本课题的研究意义和实用价值。 第2 章介绍了嵌入式系统的开发模式,协议栈的结构模型以及各个协 议层的相互关系,数据的封装和分用,t c p i p 协议栈在嵌入式系统上实现 的方法。 第3 章直击课题的核心问题,是本文研究的核心工作。在深入研究已 有的t c p i p 协议栈的基础上,针对嵌入式系统的特殊应用,提出了“零 拷贝”的存储器管理方案,网络层协议优化方法和重组算法,传输层状态 机优化方案、确认和重发机制。最后提出了虚拟文件系统的设计方案。 第4 章根据第3 章提出的解决方案,具体实现t c p f i p 协议栈各个功能。 第5 章通过各个测试模块,对t c p i p 协议栈的各个功能进行测试验证 和实验分析。 7 燕山大学工学硕士学位论文 第2 章嵌入式系统与t c p i p 协议栈 2 1 嵌入式系统开发模式 由于嵌入式系统自身的特殊性,注定了它自身具有的资源和内存空间 都十分有限,不可能像开发p c 软件那样在其上运行所有的开发工具,所 以嵌入式开发平台由主机和目标机模式构成,使用交叉编译开发方式进行 开发l 。 其中主机就是通常的p c 或工作站,嵌入式开发环境运行在主机上, 而目标机就是嵌入式系统,它们通过串口、以太网、仿真器或其它方式与 主机通信,下载主机中编译好的代码。开发环境运行在主机上,用户所有 的开发工作都是在主机开发环境中进行,包括编辑源代码、编译、连接、 下载和调试等。生成的可执行目标代码通过串口或以太网等下载到目标机, 主机可以通过开发环境提供的调试工具对代码进行调试 2 6 2 8 l 。 2 2 嵌入式系统硬件平台 本节首先介绍了嵌入式硬件平台所采用的单片机l p c 2 1 1 4 2 引,然后阐 述了j t a g 仿真接口和串口接口电路。 2 2 1l p c 2 1 1 4 硬件平台设计采用了p h i l i p s 公司单片机l p c 2 1 1 4 ,它具有零等待1 2 8 k 字节的片内f l a s h 、1 6 k 的s r a m 、u a r t 串口、j t a g 调试等众多外 围部件。 l p c 2 1 1 4 是一款性价比很高的以1 6 3 2 位a r m 7t d m i sr 3 0 3 3 1 内核的 单片机,具有6 4 脚封装、极低的功耗、2 个3 2 位定时器、4 6 个g p i o 以 及多达9 个外部中断。芯片主要有以下几个特征。 第2 章嵌入式系统与t c p ,i p 协议栈 ( 1 ) 1 6 3 2 位a r m 7t d m i s 的内核: ( 2 ) 1 6k b 片内s r a m ,1 2 8k b 片内f l a s h 程序存储器; ( 3 ) 通过片内装载程序实现在线系统编程和在线应用编程。5 1 2 字节行 编程时间为1m s 。单扇区或整片擦除时间为4 0 0m s ; ( 4 ) e m b e d d e di c e 可实现断点和观察点。当使用片内r e a l m o n i t o r 软件 对前台任务进行调试时,中断服务程序可继续运行; ( 5 2 个3 2 位定时器( 带4 路捕获和4 路比较通道) 、p w m 单元( 6 路输出) 、 实时时钟和看门狗; ( 6 ) 2 个1 6 c 5 5 0 工业标准u a r t 串口、高速1 2 c 接1 5 1 ( 4 0 0k b i t s ) 和2 个s p i 接口; ( 7 ) 通过片内锁相环可实现最大为6 0m h z 的c p u 操作频率; ( 8 ) 向量中断控制器,可配置优先级和向量地址。 2 2 2j t a g 接口电路 j t a g 接口电路和l p c 2 1 1 4 连接如图2 1 所示。 图2 - 1j t a g 接口电路 f i g u r e2 - 1j t a gi n t e r f a c ee i r c u i t 采用a r m 公司提出的标准2 0 脚j t a g 仿真接i s 。j t a g 接口上的信 号n r s t 、n t r s t 与开发板的复位电路连接,形成线与的关系,达到共同 9 燕山大学工学硕士学位论文 控制系统复位的目的。 2 2 3 串口接口电路 由于系统是3 3 v 系统,所以使用了m a x 3 2 3 2 进行r s 2 3 2 电平转化, m a x 3 2 3 2 是3 3 v 工作电源的r s 2 3 2 转换芯片。这里只使用了输入和输出 线,没有使用硬件流控制。串口接口电路如图2 2 所示。 u a r t 0 i v + c 1 【v - c 2 + g n dc 2 r 、一 揩 t 1 0 u tt 1 i n 。一 r 1 i nr 1 0 u t r 、一 t 2 0 u tt 2 吨 爿 r 2 d qr 2 0 u t 图2 - 2 串口接口电路 f i g u r e2 - 2s e r i a lp o r ti n t e r f a c ec i r c u i t 2 3 a r m 7 体系结构 a r m 7 体系结构完全承袭了r i s c 思想,其重要特征是采用l o a d s t o r e 正交指令集;固定3 2 位a r m 指令和固定1 6 位t h u m b 指令:3 操作数指 令;3 级流水线结构刚。 2 3 1 a r m 7 指令系统的逻辑结构 译码与控制机构是按照状态机的模型来设计的,负责对机器指令进行 译码,并根据译码结构发出控制信号,控制执行机构的工作。译码与控制 机构中还包含一些硬件逻辑,专门用于将1 6 位t h u m b 代码解码位对应的 3 2 位a r m 代码,这个过程不会耗费额外的时间。因此,a r m 7 可以用1 6 位的代码来实现3 2 位性能,从而实现对代码密度和系统性能的兼顾。 1 0 第2 章嵌入式系统与t c p ,i p 协议栈 执行机构主要由地址寄存器、地址增值器、寄存器堆、乘法器、桶式 移位器和算术逻辑单元( a r i t h m e t i cl o g i cu n i t ,a l u ) 五部分组成。地址寄 存器放当前正在取指的指令地址或者正在访问的数据的地址,这个地址的 副本同时保存在地址增值器和寄存器堆中的程序计数器( p r o g r a mc o u n t e r , p c ) 中,当需要读取下一条指令时,地址增值器会将当前地址加1 ,然后写 入地址寄存器和p c 中,当需要进行跳转时,a l u 计算跳转地址,并存入 p c 中,同时写入地址寄存器和地址增值器中。寄存器堆包含3 7 个工作寄 存器,包括堆栈指针s p 、链接寄存器l r 、程序计数器p c 、当前状态寄存 器c p s r 和备份状态寄存器。乘法器是专门设计的硬件单元,用于完成乘 法运算。为了保证包含多位移位的指令也能在单周期内完成,专门设计了 桶式移位器来实现这个功能。而a l u 作为算法逻辑运算单元,执行基本 的加、减、逻辑运算,但不能执行乘法和除法运算。 2 3 2a r m 7 指令系统的3 级流水线结构 a r m 7 指令系统采用3 级流水线结构。第一周期是取指令。第二个周 期完成两个工作,首先完成译码,然后根据译码结果从寄存器中读取源操 作数到a l u 或乘法器,需要注意的是a r m 7 的所有算术和逻辑运算全部 在寄存器中进行。第三个周期要完成三个工作,首先是将来自源寄存器的 操作数进行桶式移位,移位完成后送入a l u 或者乘法器进行算术或逻辑 运算,最后将结果写入目的寄存器,这些过程都在一个周期内完成。 2 4 t c p i p 参考模型 关于协议参考模型,其中有两种模型思想占据了该领域的主导地位。 一个是基于国际标准化组织i s o 早期所做的工作,称为i s o 的开放系统互 联参考模型( o p e ns y s t e mi n t e r c o n n e c t i o nm o d e l ,o s i ) 3 5 , 3 6 :另一个就是 t c p i p 参考模型。 t c p f i p 协议 3 7 3 9 1 起源于6 0 年代末美国政府资助的一个分组交换网络 研究项目。t c p i p 协议通常被认为是一个四层协议系统,每一层分别负责 燕山大学上学硕士学位论文 不同的通信功能。 ( 1 ) 链路层有时也称作数据链路层或网络接口层,通常包括操作系统 中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆( 或 其它任何传输媒介) 的物理接口细节。 ( 2 1 网络层有时也称为互联网层,处理分组在网络中的活动。在 t c p i p 协议族中,网络层协议包括网际协议( i n t e r n e tp r o t o c o l ,i p ) 4 0 , 4 1 , 互联网控制报文协议( i n t e r n e tc o n t r o lm e s s a g ep r o t o c o l ,i c m p ) m 】,以及互 联网组管理协i r ( i m e r n e tg r o u pm a n a g e m e n tp r o t o c o l ,i g m p ) 【4 3 a 4 1 o ( 3 ) 传输层主要为两台主机上的应用程序提供端到端的通信。在 t c p p 协议中,有两个互不相同的传输协议:传输控制协议 4 5 1 ( t r a n s m i s s i o n c o n t r o lp r o t o c o l ,t c p ) 并i j 用户数据报协议( u s e rd a t a g r a mp r o t o c o l ,u d p ) 。 其中t c p 为两台主机提供高可靠性的数据通信。而u d p 则为应用层提供 一种非常简单的不可靠的数据通信。 ( 4 ) 应用层负责处理特定的应用程序细节。 2 5 各层协议的相互关系 在t c p i p 协议族中,有很多协议,其中网络层i p 提供的是一种不可 靠的服务,也就是说,它尽可能快地把分组从源结点送到目的结点,但是 并不提供任何可靠性服务,同时被t c p 和u d p 使用。 t c p 在不可靠的i p 层上提供了一个可靠的运输层。它所做的工作包括 把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接受到 的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠 性的端到端的通信,因此应用层可以忽略所有的细节。 u d p 为应用程序发送和接收数据报。一个数据报是指从发送方传输到 接收方的一个信息单元。但与t c p 不同的是,u d p 是不可靠的,它不能 保证数据报能安全无误地到达最终目的。任何必需的可靠性必须由应用层 来提供。 i c m p 是i p 协议的附属协议。i p 层用它来与其它主机和路由器交换错 第2 覃嵌入式系统与t c p 1 p 协议栈 误报文和其它重要信息。尽管i c m p 主要被i p 层使用,但应用程序也有可 能访问它。i g m p 协议是l m e r m t 组管理协议。它是用来把一个u d p 数据 报发送到多个主机,它可以向多个目的地址传送数据,适用于多个接收者 ( 如视频会议) 传送信息的应用。地址解析协议( a d d r e s sr e s o l u t i o np r o t o c o l , a r p ) 和逆地址解析协议( r e v e r s ea d d r e s sr e s o l u t i o np r o t o c o l ,r a r p ) 是某些 网络接口( 如以太网和令牌环网) 使用的特殊协议。其中地址解析协议是已 知i p 地址请求物理地址,逆地址解析协议是己知物理地址请求i p 地址的。 各层的协议以及相互关系如图2 。3 所示。 用户用户 用户用户 进程进程 进程 f 进程 】j |年乒 臣,嚣卜恒 应用层 运输层 网络层 链路层 图2 - 3t c p i p 协议族中不同层次的协议 f i g u r e2 - 3v a r i o u sp r o t o c o l sa td i f f e r e ml a y e r si nt c p i pp r o t o c o is u i t e 由于嵌入式系统资源的稀缺性,整个t c p i p 协议栈不可能在嵌入式中 全部实现。协议功能的选择将在第3 章中详细描述。 2 6 封装 当应用程序用t c p 传送数据时,数据被送入协议栈中,然后逐个通过 每一层直到被当作一串比特流送入网络,其中每一层对收到的数据都要增 燕山大学工学硕十学位论文 加一些首部信息( 有时还要增加尾部信息) ,t c p 传给i p 的数据单元称作 t c p 报文段。i p 传给网络接口的数据单元称作i p 数据报。 t c p 传给i p 的数据单元称作t c p 报文段或简称为t c p 段( t c ps e g m e m ) 。i p 传给网络接口层的数据单元称作i p 数据报( i p d a t a g r a m ) 。通过以 太网传输的比特流称作帧。u d p 数据与t c p 数据基本一致,唯一不同的 是u d p 传给i p 的信息单元称作u d p 数据报( u d pd a t a g r a m ) ,并且u d p 数据报的首部长度为8 字节,而t c p 首部长度至少2 0 字节。数据进入协 议栈时的封装过程如图2 4 所示。 l 莩靠i 用户数据 【皇塑l 匝亘 至叵二 卜i 。勰1 5 0 0 韩帧_ 二= r 叫 卜一s + i 应用程序 + t c p i p + 以太网驱动程序 以太网 f i g u r e2 - 4e n c a p s u l a t i o no f d a t aa sg o i n gd o w nt h ep r o t o c o ls t a c k 由于t c p 、u d p 、i c m p 和i g m p 都要向i p 传送数据,因此i p 必须 在生成的i p 首部中加入标识,以表示数据属于哪一协议。为此,i p 在首 部设置了一个长度为8b i t 的数值,称作协议域。其中1 表示为i c m p 协议, 2 表示为i g m p 协议,6 表示为t c p 协议,1 7 表示u d p 协议。 类似地,许多应用程序都可以用t c p 或u d p 来传送数据,传输层协 议在生成报文首部时要存入一个应用程序的标识符。t c p 和u d p 都用一 个1 6b i t 的端1 2 1 号来表示不同的应用程序。t c p 和u d p 把源端口号和目的 端口号分别存入报文首部中。 1 4 第2 章嵌入式系统与t c p i p 协议栈 网络接口分别要发送和接收i p 、a r p 和r a r p 数据,因此以太网的帧 首部设置1 6b i t 的帧类型域,以指明生成的数据的协议类型。其中0 8 0 0 表 示i p 数据报。 2 7 分用 当目的主机接收到一个以太网的数据帧时,数据就开始从协议栈中由 底部向上升,同时去掉各层协议加上的报文首部。每层协议检查报文首部 中的协议标识字段,以确认接收数据的上层协议。这个过程称作分用 ( d e m u l t i p l e x i n g ) 。把协议i c m p 和i g m p 与i p 放在同一层上,那是因为事 实上它们是i p 的附属协议。但是在这里,人们又把它们放在i p 层的上面, 这是因为1 c m p 和i g m p 报文都被封装在i p 数据报中。对于a r p 和r a r p , 同样把它们放在以太网设备驱动程序的上方,这是因为它们和i p 数据报一 样,都有各自的以太网数据帧类型。 2 8h t t p 协议 万维暖 ( w o r l dw i d ew e b ,w w w ) 服务器可以提供包括文本、图形、声 音和视频等在内的多媒体信息的浏览。万维网服务使用超文本传输协议 ( h y p e rt e x tt r a n s f e rp r o t o c o l ,h t t p ) 。h t t p 是一个可理解统一资源定位 器( u n i f o r mr e s o u r c el o c a t o r ,u r l ) 地址格式的小型化、适合超文本的、多 媒体环境的通信协议。使用多用途互联网邮件扩充( m u l t i p u r p o s ei n t e r n e t m a i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论