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

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

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

文档简介

at h e s i ss u b m i t t e di nf u l f i l l m e n to ft h er e q u i r e m e n t s f o rt h ed e g r e eo fm a s t e ro fe n g i n e e r i n g d e s i g na n di m p l e m e n t o fe m b e d d e d t c p i pb a s e do na r m m a j o r:c o m p u t e ra p p l i c a t i o nt e c h n i q u e c a n d i d a t e :s u ny u a n - z h i s u p e r v i s o r :r a nq u a n w u h a ni n s t i t u t e o f t e c h n o l o g y w u h a n ,h u b e i4 30 0 7 4 ,p r c h i n a a p r i l ,2 0 0 9 _ riir ll-r1ti詹i叶klri 摘要 以太网以及t c p i p 协议己经是非常常用的网络标准。本论文研究的 是在基于r t l 8 0 1 9 a s 以太网芯片的嵌入式网络终端中实现t c p i p 协议 族。本文针对应用最广泛的以a r m 系列单片机为核心的嵌入式系统,设 计了一种合适该类系统使用的轻型t c p i p 协议栈。 开发环境采用的是a d s l 2 ,硬件平台主要是l p c 2 2 1 0 ,网络接口芯 片r t l 8 0 1 9 a s 等组成。整个协议栈的设计是围绕着t c p i p 协议为中心 进行的。协议中的物理层和数据链路层的m a c 子层是由r t 8 0 1 9 a s 网络 接口芯片来完成的。嵌入式操作系统采用非商业嵌入式操作系统u c o s i i 。实现嵌入式操作系统在l p c 2 2 1 0 芯片上的移植,是整个系统构 架中的基础部分。 主要研究内容和结论如下: ( 1 ) 对a r m 7 t d m i 核的体系结构进行深入分析,搞清楚基于 a r m 7 t d m i 核的微处理器l p c 2 2 1 0 的内核结构、存储系统、中断系统 和系统控制模块。 ( 2 ) 研究了网络芯片r t l 8 0 1 9 a s ,分析了网卡芯片的内部寄存器组 和工作原理。 ( 3 ) 分析研究实时操作系统l ac o s i i 的组成结构和内核工作原理。 对l - tc o s i i 的内核、任务处理、时间处理、任务同步与通信、c p u 管理 等等进行了移植。 ( 4 ) 重点对t c p i p 协议进行深入的研究,并根据嵌入式系统的特 点及功能,对使用的t c p i p 协议作必要的简化。从而实现了一个简化的 t c p i p 系统。 最后,给出了对系统的客观、全面的评价,并对进一步改进提出了 建议。 关键词:嵌入式,a r m ,t c p ip ,以太网 一一 武汉工程大学硕士学位论文 二二_ 二= 二二一一 n a b s t r a c t a b s t r a c t e t h e r n e ta n dt c p i pp r o t o c o li st h em o s tc o m m o n l yu s e dc r i t e r i ao ft h e n e t w o r k i nt h i sp a p e r , w es t u d yt h er e a l i z a t i o no ft c p i pp r o t o c o ls u i t ei n r t l 8 0 19 a se t h e r n e t b a s e de m b e d d e dn e t w o r kt e r m i n a t i o n c h i p i n t h i s p a p e r t h em o s tw i d e l yu s e di ns i n g l e - c h i pm i c r o c o m p u t e ra st h ec o r ea r m f a m i l yo fe m b e d d e ds y s t e m s ,d e s i g no f s u c has y s t e ms u i t a b l el i g h tt c p i p p r o t o c o ls t a c k d e v e l o p m e n te n v i r o n m e n ti sa d s1 2 ,m a i n l yb yt h eh a r d w a r ep l a t f o r m l p c 2 2 1 0 ,n e t w o r ki n t e r f a c e s ,s u c ha sc h i pc o m p o n e n t sr t l 8 0 1 9 a s t h e e n t i r ep r o t o c o ls t a c ki sd e s i g n e da r o u n dt h et c p | i p p r o t o c o lf o rt h ec e n t e r a g r e e m e n to ft h ep h y s i c a ll a y e ra n dd a t al i n kl a y e ro ft h em a cs u b l a y e rb y t h en e t w o r ki n t e r f a c e c h i pr t 8 0 1 9 a sd o n e e m b e d d e do p e r a t i n gs y s t e m u s i n gn o n c o m m e r c i a le m b e d d e do p e r a t i n gs y s t e m c o s i i e m b e d d e d o p e r a t i n gs y s t e mo nac h i pl p c 2 2 1 0t r a n s p l a n t a t i o n ,t h ee n t i r es y s t e mi st h e b a s i cp a r to ft h ef r a m e w o r k m a i nc o n t e n t sa n dc o n c l u s i o n sa r ea sf o l l o w s : ( 1 ) a n a l y s et h ea r m 7 t d m i c o r ea r c h i t e c t u r ei n - d e p t h ,s t u d y m i c r o p r o c e s s o r sb a s e d o nt h ea r m 7 t d m ic o r el p c 2 2 1 0 s t r u c t u r e s ,s t o r a g e s y s t e m s ,i n t e r r u p ts y s t e ma n dt h es y s t e mc o n t r o lm o d u l e ( 2 ) s t u d yt h en e t w o r kc h i pr t l 8 0 19 a s ,a n da n a l y s et h ei n t e r n a lc h i p r e g i s t e rc a r da n dh o w i tw o r k s ( 3 ) w ea n a l y s et h ec o m p o s i t i o na n dw o r k i n gp r i n c i p l eo ft h er e a l t i m e o p e r a t i n gs y s t e mf l c o s - i ik e r n e l o ff l c o s i ik e r n e l ,t a s kp r o c e s s i n g ,t i m e , t a s ks y n c h r o n i z a t i o na n dc o m m u n i c a t i o n ,c p um a n a g e m e n t ,e t c h a v eb e e n t r a n s p l a n t e d ( 4 ) w e f o c u so nt h et c p i pp r o t o c o lt oc o n d u c ti n d e p t hr e s e a r c h , a n di na c c o r d a n c ew i t ht h ec h a r a c t e r i s t i c so fe m b e d d e d s y s t e m sa n df u n c t i o n s , o nt h eu s eo ft h et c p i pp r o t o c o lt os i m p l i f yt h en e c e s s a r y i no r d e rt o n l a c h i e v eas i m p l i f i e dt c p i p s y s t e m f i n a l l y , t h es y s t e mi sg i v e na l lo b j e c t i v ea n dc o m p r e h e n s i v ea p p r a i s a l , a n dm a d er e c o m m e n d a t i o n st of u r t h e r i m p r o v e k e y w o r d s :e m b e d d e ds y s t e m ;a r m ;t c p i p ;e t h e r n e t i v , j 1 , 目录 目录 摘j 要i a b s t 】5 l a i :? 【i i i 目录v 第1 章引言- 1 1 1 课题背景和意义一1 1 2 国内外研究现状2 1 3 课题研究内容和目标4 第2 章嵌入式以太网系统硬件构成研究7 2 1 核心处理器l p 0 2 2 10 和扩展电路7 :2 2r t l 8 0 19 a s 1 2 2 2 1r t l 8 0 19 a s 的硬件结构1 2 2 2 2r t l 8 0 19 a s 的软件编程1 5 2 3l p 0 2 2 10 和r t l 8 0 19 a s 的连接1 9 第3 章# c o s i i 及其在l p c 2 2 1 0 上的移植2 1 3 1l jo o s - i i 2 1 3 1 1 嵌入式操作系统概述2 1 3 1 2uo o s - i i 的特点2 2 3 1 3uo o s - i i 内核的工作原理2 4 3 2l ao o s - i i 移植的条件和基本步骤2 5 3 3 移植概述2 6 3 4 移植的测试3 3 第4 章协议栈的实现3 5 4 1 嵌入式t o p lp 协议研究3 5 4 2t o p lp 在嵌入式系统中的取舍3 8 4 2 1 链路层的协议3 9 4 2 2 网络层协议3 9 4 2 3 传输层协议4 0 4 2 4 应用层协议4 0 4 3t o p ip 协议栈在嵌入式系统中的裁剪及总体设计4 1 4 3 嵌入式协议栈的实现4 3 4 3 1a r p 模块的实现4 3 4 3 2ip 模块的实现一4 7 4 3 2u d p 模块的实现5 1 v 武汉工程大学硕士学位论文 4 3 2ic m p 模块的实现5 5 4 4测试5 7 总结6 1 参考文献6 3 攻读硕士期间发表的论文6 7 致谢。6 9 第1 章引言 第1 章引言 1 1 课题背景和意义 i t 业界里有这样的一种说法,公元2 0 0 0 年通常被认为是科技史的一 个分水岭,2 0 0 0 年之前被称为是“p c 时代;而2 0 0 0 年之后则往往被 称为是“后p c 时代。在后p c 时代,数量巨大,形式多样的种种嵌入 式产品,已经迅速的开始取代p c 机,成为我们处理信息最重要的工具, d , n 手机、m p 3 、数码相机、机顶盒等微型数字化产品,大到智能家电、 网络家电、机器人,车载的电子设备、不知不觉中,嵌入式产品已经形 成了一个个充满巨大商机的大产业,而且成为整个软件业发展的支柱之 一。在数字化产品极度繁荣的“后p c 时代,而嵌入式系统则是所有各 类数字化i t 产品的核心。嵌入式系统,往往是指以实际应用为中心和目 的,将软件技术、计算机硬件技术、通信技术、微电子技术整合起来, 用一种“量身定做的方式嵌入到应用设备系统中的专用的计算机系 统。嵌入式系统一般是由嵌入式处理器、外围的硬件设备、嵌入式操作 系统和用户应用程序等4 个部分组成l l 】。 中国的手机、彩电和v c d 的产量和消费量都是世界第一,我国拥有 世界上最大的民用电子产品的消费市场,这些电子产品对嵌入式软件有 着巨大的需求,而这些需求则为嵌入式产业的发展提供了最好的土壤和 发展环境。嵌入式软件的最重要应用领域之一就是移动通信行业,整个 嵌入式软件应用规模的6 0 来自于手机。我国移动电话用户的规模已经 达到几亿户,移动电话的普及率已经很高,但是数字还远未饱和,预计 未来我国移动电话用户还会以每年2 0 以上的速度增长。嵌入式产业前 景广阔。 i n t e r n e t 现在作为社会最重要的信息基础设施,是信息交流和流通的 重要渠道。但目前大多数的嵌入式应用系统并没有和i n t e r n e t 连接,还处 于单独应用和信息孤立的阶段。在一些专用的汽车和工业应用中,为了 能够实现多个m c u 之间在信息上的交流,人们利用c a n 、r s 一4 8 5 、 r s 2 3 2 等总线技术将多个m c u 组成网,但是这种网络通信的有效半径 武汉j r 程大学硕士学位论文 并不大,而且往往与i n t e m e t 之间是孤立的。如果我们能够将这些嵌入式 系统与i n t e m e t 连接,则可以用一种方便、低廉的办法将信息传送到世界 的任何一个地方,从而能够实现资源和信息的共享,人们可以通过网络 随时随地地监控和优化生产的过程,从而更加安全、高效、可靠地进行 生产,这有可能极大的提高我们的生产效率。最近几年来i n t e m e t 技术正 在不断向嵌入式子系统和工业控制设计领域渗透,从而使得嵌入式系统 的设计迈进了一个崭新的时代。能够实现和i n t e r n e t 互联是当前嵌入式系 统发展的重要方向和热点领域。国内和国外已经有一些产品不断的出现。 实现嵌入式电子系统在基于t c p i p 协议之上的网际互联,以及对已有的 嵌入式系统进行远程的升级、系统监控维护和功能的动态升级,是硬件 设计的一个发展方向,也是目前嵌入式系统的设计者需要思考的个重 要问题【2 1 。 1 2 国内外研究现状 嵌入式的i n t e r n e t 技术是最近几年被提出来的一项新兴技术和概念, 对嵌入式t c p f l p 协议相关领域的研究是对嵌入式i n t e m e t 技术研究的一 个主要方面【3 】。而本课题所研究的主要内容就是如何在嵌入式系统中实现 t c p i p 协议栈,从而最终来实现嵌入式的i n t e m e t 技术。 为了能够专门讨论和制定嵌入式t c p i p 领域的标准以及开发相关的 技术,共同来推动这一市场,许多的国外大公司包括m i c r o c h i p ,e m w a r e , m o t o r o l a 和p h i l i p s 在内的数十个公司联合成立了“嵌入式i n t e r n e t 联盟 ( e t i ) ”。现在e m w a r e 公司已经开发出了专门针对嵌入式设备的因特网解 决方案叫做e m i t ,即嵌入式微型网络技术;m i c r o c h i p 公司已经在i n t e r n e t 接入领域开发出了i p i c 系列的单片机;而诸如s i i 公司开发的t c p i p 协 议栈芯片、t d k 公司开发的i m o d e n 等产品则能够为嵌入式i n t e m e t 的实 现以及应用系统的开发提供了一系列可行的途径。而在工业测控领域, 于1 9 9 9 年成立的“工业以太网协会 ( i b q 则正在积极的专门致力于工业 以太网现场总线的研究与开发。惠普公司应用i e e e l 4 5 1 2 标准生产出来 的嵌入式以太网控制器能够支持t c 聊p 协议,具备1 0 b a s e t 接口,应 第1 章引言 用于驱动器、传感器等现场设备。此外,美国的o p t o 公司通过实现嵌 入式i n t e m e t 技术,成功的研制了以太网i o 系统“s n a pi o 系统,成 功的应用于楼宇智能化监控、工业过程控制等多项工程中1 4 1 。 嵌入式系统是专用的计算机,其目的就是要把系统变得更加的简单、 方便、普遍、适用。国内目前在嵌入式i n t e r n e t 技术方面的研究才刚刚开 始,大多数的研究还停留在理论阶段。中国计算机学会( c h i n ac o m p u t e r f e d e r a t i o n ) 在1 9 9 9 年举行办了“嵌入式系统及产业化在中国的发展前景” 研讨会,专家们探讨了嵌入式系统在未来的i t 设施中的地位,在当今计 算机产业中的地位,尤其关注了嵌入式i n t e r n e t 枝术问题,认为嵌入式设 备将是下一代网络设备中的主导力量。 嵌入式设备实现网络互联的前提是实现嵌入式t c p i p 协议栈。对于 这个课题,很多机构都对这个问题进行了研究。目前国外已经出现了诸 多的嵌入式t c p i p 协议栈,但是使用比较广泛的主要有如下几个: ( 1 ) 风河公司( w i n dr i v e r ) 的t c p i p 协议栈。风河公司以其v x w o r k s 嵌入式操作系统从而为人们所熟悉,是著名的嵌入系统的开发商。毋 v x w o r k s 嵌入式操作系统自身包含t c p i p 协议栈,主要用于工业、军事、 通讯等高端领域。其协议栈的基础是伯克利的4 4 版本的t c p i p 协议栈, 并根据嵌入式环境做了特殊的优化。在基站等无线通讯领域,交换机、 路由器等数据通信领域的应用比较广泛【5 j 。 ( 2 ) l i n u x 操作系统自身包含t c p i p 协议栈,支持完全的t c p i p 协 议,但是要占用大约大约3 0 k 字节的r a m 和1 0 0k b 的r o m 。这个开 销对于大部分嵌入式系统是无法承受的,所以它只能用在高档的服务器 上。 ( 3 ) l w l p 由瑞典计算机科学研究所开发的一种源码开放的t c p i p 协 议栈。l w l p 是t a p 协议栈的一个实现。l w l p 协议栈主要关注的是怎 么样减少内存的使用河代码的大小,这样就可以让1 w i p 适用于资源有限 的小型平台例如嵌入式系统。为了简化处理过程和内存要求,l w l p 对 a p i 进行了裁减,可以不需要复制一些数据。l w l p 是l i g h tw e i g h t ( 轻型) i p 协议,有无操作系统的支持都可以运行。l w l p 实现的重点是在保持t c p 武汉工程大学硕士学位论文 协议主要功能的基础上减少对r a m 的占用,一般它只需要几百字节的 r a m 和4 0 k 左右的r o m 就可以运行,这使l w i p 协议栈适合在低端的 嵌入式系统中使用。 ( 4 ) u l p ( m i c r o i p ) 是由瑞典计算机科学研究所开发。u i p 最适合用于 8 1 6 位微控制器。u i p 的特点是简单易用,资源占用少。它去掉了许多 t c p i p 协议栈中不常用的功能,保留了网络通信所必要的一些协议。其 设计重点是i bi c m p 和t c p 协议的实现上,它将这三个模块合为一个整 体,将u d p 和a r p 协议作为可选的模块。 ( 5 ) t i ( 德州仪器公司) 开发的t c p i p 协议栈,n 公司为其 t m s 3 2 0 c 6 0 0 0 系列d s p 专门设计的网络应用协议栈。该协议栈是基于 1 1 的d s pb i o s 编制的,适合于1 6 位的d s p 的应用。国内的东北大学的 c n c i 研究所开发了t h i nt c p i p 协议栈。该协议栈的最大特点是相当精 简,所占程序空间很小,大概只有2 5 k b y t e s 大小,所以适合于8 位机应 剧6 1 。 1 3 课题研究内容和目标 本文通过对大量中外文献的研究和分析,结合当前嵌入系统发展的 前沿技术,对嵌入式i n t e m e t 的软硬件进行了系统的学习和研究,主要完 成以下几个方面的研究工作: 首先研究了基于a r m t t d m i ( s ) 内核的处理器l p c 2 2 1 0 的硬件体系 结构,重点研究了网络接口部件以及r t l 8 0 1 9 a s 的软件编程。 其次研究了嵌入式操作系统uc o s i i 。主要研究嵌入式操作系统的 移植,包括拜uc o s i i 的配置和基于l p c 2 2 1 0 硬件的参数修改和u c 0 s i i 多任务编程。 最后研究了t c p i p 协议栈在基于uc o s i i 软件平台和r t l 8 0 1 9 a s 硬件的实现问题。在过程中参考了周立功单片机有限公司的z i 允i p 代码, 对协议栈做了简单的网络测试,如p i n g 命令、u d p 协议等。 本文实现了在资源受限的条件下,研究使嵌入式系统支持t c p i p 协 议的的策略及其具体实现方法,在a r m 芯片和嵌入式操作系统uc o s 翌! 皇呈! 室一 一_ 一 i i 上实现了微型t c p i p 协议栈,扩展了uc o s i i 对i n t e r n e t 网络的支持。 第2 章嵌入式以太网系统硬件构成研究 第2 章嵌入式以太网系统硬件构成研究 2 1 核心处理器l p c 2 2 10 和扩展电路 嵌入式系统的核心部件是各种类型的嵌入式处理器。设计者在选择 处理器时要考虑的主要因素有:处理性能、技术指标、功耗、软件支持 工具、是否内置调试工具、供应商是否提供评估板等。 a r m 微处理器目前包括下面几个系列,a r m 7 系列、a r m 9 系列、 i n t e r 的s t r o n g a r m 等。目前,应用比较多的是a r m 7 系列和a r m 9 系 列,a r m 9 系列适合比较高端的应用,如视频媒体、数字消费品、下一 代无线设备等;a r m 9 e 系列更是提供了增强的d s p 处理能力,非常适 合那些需要同时使用d s p 和微控制器的应用场合1 7 1 。相比之下,a r m 7 在满足系统需求的基础上具有便宜的价格,能够节约开发成本,也更适 合系统的需要。 l p c 2 2 1 0 是p h i l i p 公司基于一个支持嵌入式跟踪和实时仿真的 1 6 3 2 位a r m 7 t d m ic p u 的微控制器。对于对代码规模有严格控制的应 用可以使用1 6 位的t h u m b 模式【引,这种模式可以将代码规模降低超过 3 0 的同时而性能的损失却很小。l p c 2 2 1 0 有1 4 4 脚封装,功耗极低, 拥有多个3 2 位定时器和8 路1 0 位a d c 、p w m 输出以及多达9 个外部 中断。这些特征使它们特别适用于医疗系统、工业控制、p o s 机和访问 控制【9 1 0l p c 2 2 1 0 通过配置总线最多可提供7 6 个g p i o 。内置了宽范围 的串行通信接口使得它们非常适合于协议转换器、通信网关、嵌入式软 m o d e r n 和其它很多种类型的应用【1 0 】。 以下是l p c 2 2 1 0 的一些基本参数: 1 4 4 脚1 6 3 2 位的a r m 7 t d m i 微控制器。 拥有片内静态r a m ,大小为1 6 k 字节。 串行b o o t 装载程序可以通过u a r t 0 来实现在系统下载和编程。 o d b 部存储器接口可以把存储器配置成4 组,每组可达1 6 m b ,数据 宽度可配置为8 1 6 3 2 位。 e m b e d d e d l c e r t 接口使能断点和观察点。当前台任务使用片内 武汉工程大学硕士学位论文 r e a l m o n i t o r 软件调试时,中断服务程序可继续执行。 利用嵌入式跟踪宏单元( e t m ) 可以对执行程序进行高速实时而 无干扰的跟踪。 8 路1 0 位的a d 转换器,转换时间可以低至2 4 4 m s 。 p w m 单元( 6 路输出) 、3 2 位定时器2 个( 带4 路比较通道和4 路捕获) 、看门狗和实时时钟。 拥有多个串行接口,包括高速1 2 c 接口( 4 0 0k b i t s ) 、2 个1 6 c 5 5 0 工业标准的u a r t 和2 个s p i 接口。 中断向量控制器。可以配置优先级以及向量地址。 最多7 6 个通用i o 口( 可以承受5 v 的电压) ,1 2 个独立的外部中 断引脚( 拥有c a p 和e i n 功能) 。 通过操作片内p l l 可将c p u 操作频率达到最大6 0 m h z 。 片内晶振的频率范围:1 3 0m h z 。 2 个低功耗模式:空闲模式和掉电模式。 外部中断可以将处理器从掉电模式中唤醒。 可以通过个别禁止使能外部功能来优化功耗。 l p c 2 2 1 0 内部有个可以支持仿真的a r m 7 t d m ic p u 内核,内部 a r m 7 局部总线是与片内存储器控制器接口的,a m b a 高性能总线 ( a h b ) 是与中断控制器接口的,v l s i 外设总线( v p b ,a r ma m b a 总线的兼容超集) 是连接片内外设功能的。l p c 2 2 1 0 将a r m 7 t d m i 配 置为小端( 1 i t t l e e n d i a n ) 字节顺序。a h b 则外设分配了2 m 字节的地址 范围,它的地址被放置在4 g 字节的a r m 存储器空间的最顶端。每一个 a h b 外设都被分配了1 6 k 字节的地址空间。l p c 2 2 1 0 的外设功能( 中断 控制器除外) 都与v p b 总线相连接。将v p b 总线与a h b 总线相连的是 a h b 到v p b 的桥。v p b 外设同样也被分配了2 m 字节的地址范围,开 始的地方是从3 5 g b 的地址点。v p b 地址空间内为每个v p b 外设分配了 1 6 k 字节地址空间。管脚连接模块则控制片内外设与器件管脚的连接。用 软件可以控制该模块,以符合管脚在特定的应用中的需求与外设功能。 整体功能框图如图2 1 所示【1 1 l 。 第2 章嵌入式以太网系统硬件构成研究 图2 1l p c 2 2 1 0 功能框图 l p c 2 2 1 0 内部含有1 6 k b 的片内静态r a m ,s r a m 支持8 位、1 6 位 和3 2 位的访问,可以用作代码和数据的存储。l p c 2 2 1 0 没有片内f l a s h 但具备外部存储器控制器,外部存储器控制器可扩展b a n k 0 b a n k 3 这 4 个b a n k 的存储器组,每个存储器组空间的大小为1 6 m b 。通过这种方 式就可以连接外部f l a s h 或者其它类型的外部读写芯片。在当控制器复 位之后我们从用户的角度看到的整个地址空间的映射如图2 2 。 武汉工程大学硕士学位论文 4 0g b 3 7 5g b 3 5g b a h b 外没 v p 8 纷设 一一 缣瞅绦舛缔拜铭貉 b o o t 文 衄j ! 成r o m 彪鼢渺露童l 缳暾给, 内存潞嚣 1 6k l b ”晚移玉r a m o x f f f ff f f f 0 x f oo o o o o x e 0 0 00 0 0 0 o x 4 0 3 f f f 0 x 4 0 0 0o o o o 图2 - - 2 系统存储器映射 l p c 2 2 1 0 的外部静态存储器控制器可以最多同时支持4 个单独配置 的存储器组。每个单个的存储器组都可以支持r o m 、s r a m 、f l a s h e p r o m 、b u r s tr o m 存储器或者外部的i o 器件。每一个存储器组总线 宽度都可以为8 、1 6 或3 2 位。l p c 2 2 1 0 的管脚地址输出线是a 2 3 :0 , 专门用于4 个存储器组译码的是地址位a 2 5 :2 4 。外部存储器的起始部 分就是4 个存储器组的有效区域。当在b o o t 1 :0 的控制下,b a n k0 可 以用来作为初始引导区域【1 2 1 。 如下是外部存储器组的地址范围: 1 0 第2 章嵌入式以太网系统硬件构成研究 b a n k地址范围配置寄存器 o8 0 0 0 0 0 0 0 8 0 f f f f f fb c f g o 18 1 0 0 0 0 0 0 - 8 1 f f f f f fb c f g l 28 2 0 0 0 0 0 0 8 2 f f f f f fb c f g 2 38 3 0 0 0 0 0 0 8 3 f f f f f fb c f g 3 c s o c s 3 分别是b a n k 0 b a n k 3 的片选信号,当i o 器件或片外存储 器是通过c s o 进行片选或者是由c s 0 与地址线进行译码来片选,哪么此 i o 器件或者片选存储器就属于b a n k 0 组,地址为被分配为8 0 0 0 0 0 0 0 - - 8 0 f f f f f f 。 a ii a 0a 1 7 4 4a 1 8 a 22 a la 1 6 4 3a 1 7 a 33 a 2a 1 5 4 2a 1 6 a 44 a 30 e 4 l n o e a 55 a 4u b 4 0b l s l c s 06 琵西 3 9b l s 0 d 07 d 0d 1 5 3 8d 1 5 d l8 d ld 1 4 3 7d 1 4 d 29 d 2d 1 3 3 6d 1 3 c 4 2 & 33 d 31 0 3 5d 1 2 h ”t l l d 3d 1 2 3 4 i :1 2 v d dg n d ii 41 3 g n dv d d 3 3 一d 51 4 阴d i l 3 2d 1 ll d 61 5 d 5d 1 0 3 ld 1 0v 3 d 71 6 d 6d 9 3 0d 9 n w e1 7 d 7d 8 2 9d 8 a 61 8 谎n c 2 8 a 71 9 a 5a 1 4 2 7a 1 5 a 82 0 a 6a 1 3 2 6a 1 4 a 92 l a 7a 1 2 2 5a 1 3 a 8a l l 2 4a 1 2 a 1 0 2 2 2 3a l l a 9a 1 0 i s 6l l 2 5 6 1 6 a l a l 2 5 a 2 2 4 瓦广嚣 a 42 2 a 52 l a 62 0 a 81 8 a 98 a 1 07 a l l6 a 1 25 a 1 3 4 蜀下1 a 1 52 a 1 6l a 1 74 8 a 1 81 7 a 1 91 6 a 2 09 c s l2 6 n o e2 8 n w el l a 0 a l a 2 a 3 a 4 a 5 a 6 婚 a 8 a 9 a 1 0 a 1 l a 1 2 a 1 3 a 1 4 a 1 5 a 1 6 a 1 7 a 1 8 a 1 9 d 0 d l d 2 d 3 d 4 d 5 d 6 d 7 d 8 d 9 d 1 0 d 1 l d 1 2 d 1 3 d 1 4 d 1 5 c e v d d o ev s s 匹v s s s s t 3 9 v f l 6 0 2 9d o 3 1d l 页司 3 5d 3 3 8d 4 4 0d 5 4 4d 7 3 0d 8 3 4d 1 0 3 6d 1 1 3 9d 1 2 打_ 1 玎3 4 3d 1 4 4 5d l s v d d 33 图2 - - 3 外部存储器电路图 以太网网关需要一定的空间用于程序的运行和保存,所以需要在微 控制器l p c 2 2 1 0 的外部扩展存储空间,我们选择了4 m b i t 的s r a m 芯片 i s 6 1 l 、,2 5 6 1 6 a l 和1 6 m b i t 的f l a s h 芯片s s t 3 9 v f l 6 0 ,其接口电路如 图2 3 所示。 两片片外的存储器都是采用1 6 位的数据总线进行连接,我们将片选 信号c s 0 分配给s r a m ,将片选信号c s l 分配给f l a s h 。根据以上的 分配规则,r a m 地址范围为8 0 0 0 0 0 0 0 - - 一8 0 f f f f f f ,f l a s h 地址为 8 1 0 0 0 0 0 0 8 1 f f f f f f 。 1 1 武汉工程大学硕士学位论文 2 2r t l 8 0 1 9 a s 2 2 1r t l 8 0 19 a s 的硬件结构 r t l 8 0 1 9 a s 是由r e a l t e k 公司生产的拥有高集成度的专用以太网 接口芯片,能够很简单地实现p l u ga n dp l a y ( b p 插即用) 并且能够兼容 n e z 0 0 0 。它具有冲突检测、曼彻斯特编码和重发等功能,其内部内嵌有 一个1 6 k b 的s r a m ,能够支持p n p 自动探测,具备有全双工的通信接 口,可以通过交换机实现在双绞线上同时的发送和接收数据,可以使得 其传输带宽能够从1 0 m b i t s 增加到2 0 m b i t s ,以上这些特征使得 r t l 8 0 1 9 a s 成为一个用来进行以太网通信的理想芯片【1 3 】。 在程序运行时和以太网数据的收发过程中,程序中所用到的最主要 的寄存器是c u r r 和b n r y ,它们工作原理如下: c u r r 是以太网控制器的写接收缓冲区的指针。当控制器被正确的 复位之后,就应该将它初始化设置为p s t a r t + i 。每当以太网控制器写 完接收缓冲区的一页,就将这个地址加1 ,由r t l 8 0 1 9 a s 自动操作 c u r r = c u r r + 1 ,;当加到最后的空页时,以太网控制器r t l 8 0 1 9 a s 自 动将c u r r 置为接收缓冲区的第一页。在当c u r r = b n r y 时,表示接收 缓冲区被全部存满而数据没有被用户读取,此时的r t l 8 0 1 9 a s 将会停止 往接收缓冲区里面写入数据,此时新收到的数据将会被丢弃而并非覆盖 原来的数据。这种情况叫做接收缓冲区溢出。 b n r y 则是指向在接收缓冲区中被读取的最后一页。在当控制器被 正确复位之后,刚开始的时候还没有接收到任何的数据包,所以b n r y 此时会被设置为指向第一个接收缓冲区的页面。b n r y 是必须由用户操 作的。每当用户从以太网控制器r t l 8 0 1 9 a s 中读取一页数据时,要将 b n r y 加1 ,然后将数据再写回b n r y 寄存器( 即b n r y = b n r y + 1 ) 。 在当b n r y 被加到最后面的空页时,要将b n r y 变成第一个接收页( 即 p s t a r t = b n r y ) 。 c u r r 和b n r y 的作用主要是用来方便的控制缓冲区的存取过 程,以保证能够顺序的写入和读出数据包。在当c u r r = b n r y + 1 时, 第2 章嵌入式以太网系统硬件构成研究 r t l 8 0 1 9 a s 的接收缓冲区里被认为没有数据,此时表示并没有收到任何 的数据包。用户可以通过这个方法来判断有无数据包可以读,如果上面 的条件不成立,此时表示接收到了新的数据包。每当用户读取一页数据, 哪么b n r y 则加1 ,一直到上述条件成立时,则表示所有数据包已经被 读完,这个时候会停止读取数据包。 根据数据链路不同,r t l 8 0 1 9 a s 的内部可被分为远程d m a 通道和 本地d m a 通道【1 4 1 。本地d m a 用来完成网线与控制器之间的数据交换, 控制器本身可完成这一过程;在远程d m a 的操作之下,数据可以自动的 被移动到主处理器的内存之中,操作机制是这样的: 主处理器通过先赋值远程d m a 字节计数器r b c r 0 及r b c r l 和起 始地址寄存器r s a r 0 、r s a r l ,然后通过r t l 8 0 1 9 a s 自己的的d m ai o 地址来读写指定的地址上的数据。主处理器收在发数据时只需要对远程 d m a 操作就可以了。主处理器如果要向网上发送数据,可以先将数据通 过远程d m a 送到r t l 8 0 1 9 a s 的发送缓存区,然后再发出传送命令就可 以完成向网上发送数据这一过程。当r t l 8 0 1 9 a s 接收到数据时,依次通 过m a c 比较、c r c 校验,然后再由f i f o 存到接收缓冲区,每当收满一 帧后,则以寄存器标志或中断的方式来通知主处理器。r t l 8 0 1 9 a s2 1 2 作 原理图如图2 4 所示。 内部慈线 图2 - 4r t l 8 0 1 9 a s2 1 2 作原理图 如图2 4 中,在接收时钟的控制下,接收逻辑将串行数据转换成字节 武汉t 程大学硕士学位论文 送入f i f o 和c r c ;在发送时钟的控制下,发送逻辑可以将f i f o 送来的 字节按位移出并且送到c r c ;在接收时,c r c 逻辑要对输入的数据进行 c r c 校验并将结果与帧尾的c r c 进行比较,如果不相同哪么该帧数据将 会被拒收,在发送时,c r c 会对帧数据产生c r c 校验并将其附加在数据 尾部进行发送;地址识别逻辑将预先设置的本地物理地址与接收帧的目的 地址进行比较,如果不相同并且不满足广播地址的设置要求,哪么该帧 数据将会被拒收;f i f o 逻辑则会通过对收发的数据作1 6 个字节的缓冲来 减少对本地d m a 请求的频率。r t l 8 0 1 9 a s 内置的1 6 k b 的s r a m 被分 成发送缓冲和接收缓冲两个部分【1 4 1 。 缓冲区以页为单位,每页

温馨提示

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

评论

0/150

提交评论