已阅读5页,还剩62页未读, 继续免费阅读
(通信与信息系统专业论文)基于嵌入式linux系统的路由搭建及网络环境模拟.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 任何有一定规模的计算机网络( 如企业网、校园网、智能大厦等) ,都需要路 由器。现在虽然有各种硬件路由器可用,但是费用昂贵。用l i n u x 系统构建的z e b r a 软路由器作为替代品,可以支持i p v 4 、肌6 和其它各式各样的协议,不仅能够满 足所有的路由需求,而且价格低廉,因而具有良好的应用前景。 本文的工作主要是以嵌入式为平台架构路由环境,实现路由器的功能。首先 介绍了网络架构和路由协议的基本概念,阐明此论文工作的基础。 其次建立了以嵌入式a r m 为核心的硬件开发平台,根据搭建路由环境的需 要所建立的硬件平台具备数据包转发的功能,基本满足软件需求。 通过b o o t l o a d e r 、l i n u x 内核等一系列软件的移植,建立了嵌入式a r m 开发 板的软件环境。利用z e b r a 和n i s t n e t 建立基于l i n u x 系统的路由环境和网络模拟 环境,同时设置路由参数实现数据包的转发,通过调整网络环境参数,在局域网 上实现了一些广域网的特征。 通过z e b r a n 代码分析了r i p 协议和o s p f 协议的般原理、数据包格式和相应 算法。r i p 协议是适合中小型网络的路由协议,详细分析其协议信息格式和路由 选择算法,更好地处理实际网络路由配置、管理与维护中遇到的各种问题。同时 分析了在i n t e r n e t 广域网等大型网络普遍采用的o s p f 协议,它也是应用最广泛的 协议之一。 关键词:嵌入式系统l i n u x 路由协议r i po s p f a b s t r a c t m o s tc o m p u t e rn e t w o r k ( s u c ha se n t e r p r i s en e t w o r k , c a m p u sn e t w o r k , i n t e l l i g e n t b u i l d i n g ,e t c ) ,w i l ln e e dar o u t e r a l t h o u g ht h e r ea r eav a r i e t yo fh a r d w a r er o u t e r a v a i l a b l e ,b u te x p e n s i v e z e b r ai sas u b s t i t u t ef o rs o f tr o u t e ru s i n gl i n u xs y s t e m ,c a l l s u p p o r tl p v 4 ,l p v 6 ,a n do t h e rv a r i o u sk i n d so fp r o t o c o l s ,n o to n l yt om e e tt h en e e d so f t h er o u t i n g ,b u ta l s ol o wp r i c e s ,s oi th a sg o o da p p l i c a t i o np r o s p e c t s t h ew o r ko ft h i sa r t i c l ei st oe s t a b l i s ht h er o u t i n ge n v i r o n m e n tm a i n l yb a s e do n e m b e d d e dp l a t f o r ma r c h i t e c t u r ea n dr e a l i z et h ef u n c t i o no ft h er o u t e r t h ef i r s ts e c t i o n i n t r o d u c e st h eb a s i cc o n c e p t so ft h en e t w o r ks t r u c t u r ea n dr o u t i n gp r o t o c 0 1 s e c o n d , t h ee m b e d d e da r mh a r d w a r ed e v e l o p m e n tp l a t f o r mi se s t a b l i s h e d , a n d t h ep l a t f o r ma c c o r d i n gt ot h en e e d so ft h er o u t i n ge n v i r o n m e n ts t r u c t u r e sh a sd a t a p a c k e tf o r w a r d i n gf u n c t i o na n dm e e tt h eb a s i cs o f t w a r er e q u i r e m e n t s t h r o u g ht h et r a n s p l a n to fb o o t l o a d e r , l i n u xk e r n e la n do t h e rs o f t w a r e ,t h e s o f t w a r ee n v i r o n m e n to ft h ee m b e d d e da r md e v e l o p m e n tb o a r di se s t a b l i s h e d r o u t i n ge n v i r o n m e n ta n dn e t w o r ks i m u l a t i o ne n v i r o n m e n ta r ce s t a b l i s h e du s i n g z e b r aa n dn i s t n e ts o f t w a r e t h er o u t i n gp a r a m e t e r sa r es e tu pt or e a l i z ed a t ap a c k e t f o r w a r d i n g ,a n dt h ep a r a m e t e r so ft h en e t w o r ke n v i r o n m e n ta r ea d j u s t e dt oa c h i e v ea n u m b e ro fw i d e a r e an e t w o r kc h a r a c t e r i s t i c si nl o c a ln e t w o r ka r e a t h r o u g ht h ea n a l y s i so fz e b r as o u r c ec o d e ,t h eg e n e r a lp r i n c i p l e so fr i pp r o t o c o l a n do s p f p r o t o c o l ,p a c k e tf o r m a ta n dt h ec o r r e s p o n d i n ga l g o r i t h mc a nb eu n d e r s t o o d r i pp r o t o c o li ss u i t a b l ef o rs m a l la n dm e d i u ms i z e dn e t w o r k s 砀ep r o t o c o l i n f o r m a t i o nf o r m a t sa n dr o u t i n ga l g o r i t h mi sd e e p l ya n a l y z e da n dt h ea c t u a ln e t w o r k r o u t i n ga l l o c a t i o n , m a n a g e m e n ta n dm a i n t e n a n c ep r o b l e m st h a tm a ya r i s ec a nb e d e a l e dw i t h a tt h es a m et i m e ,o s p fw h i c hi sw i d e l yu s e di nw i d ea r e an e t w o r ks u c h a si n t e m e tn e t w o r ki sa n a l y z e da n di ti so n eo ft h em o s tw i d e l yu s e dp r o t o c 0 1 k e yw o r d s :e m b e d d e ds y s t e m ,l i n u x ,r o u t i n gp r o t o c o l ,r i po s p f 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得苤鲞盘堂或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:伶两两签字日期:五吖年荔月f 日 学位论文版权使用授权书 本学位论文作者完全了解苤壅叁鲎有关保留、使用学位论文的规定。 特授权:叁鲞盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名: 饷丽 导师签名: 鹩 签字日期: 加厂年占月l 同 签字同期:夕矽j i l 年莎月日 天津大学硕士学位论文 第一章绪论 1 1t c p i p 协议 第一章绪论 t c p i p 协议即传输控制协议互连网络协议,是连接h t e r n e t 的计算机通信 的协议,定义了如何连接i n t e m e t 以及数据如何进行传输的标准。t c p 口协议是 t c p 协议、切) p 协议、d 协议、i c m p 协议和其他一些协议的协议组。 t c p i p 协议不完全是o s i 的7 层参考模型。o s i 模型,将整个通信系统划 分为7 个层次,每层有其特定的任务。这7 层为物理层、数据链路层、网络层、 传输层、会话层、表示层和应用层。t c p i p 协议采用了4 层协议结构,每层都 有下层所提供的服务来完成要求。这4 层分别为网络接口层、网络互连层、传输 层、应用层。图1 1 显示了t c p i p 协议族在o s i 模型中的位置。 例如http 、smtp 、snmp 、ftp 、 应用层 t e l ne t 表示层例如sd r 、asn 1 、smb 会话层例如asap 、tls 、ssh 、rpc 传输层例如tcp 、udp 、rtp 例如i p 、i cmp 、i gmp 、bgp 、 网络层 0spf 、ri p 、arp 、ra rp 例如et he 1 1 1e t 、to k e nri n g 、i sdn 、 数据链路层 p pp 、802 11wi f i 物理层例如wi r e 、r a d i o 、f i b e ro p t i c 图1 - 1t c p f i p 协议族在o s i 模型中的位置 图1 2 显示了t c p i p 模型。数据从上层开始,每向下经过一层,在前面加上 下层包头( 封装) 。报头记录着重要信息,对等实体之间是利用这些信息来交换 信息的。最上层为应用层,包括所有和应用程序协同工作,利用网络交换应用程 序专用的协议。一些特定的程序运行在该层上,它们提供服务直接支持用户应用, 天津大学硕士学位论文第一章绪论 这些程序和它们对应的协定包括超文本传输协议h ”m ( h y p e r t e x tt r a n s f e r p r o t o c 0 1 ) 、域名服务d n s 、文件传输协议f t p ( f i l e t r a n s f e r p r o t o c 0 1 ) 、简单网络 管理协议s n m p ( s i m p l en e t w o r km a n a g e m e n tp r o t o c 0 1 ) 、安全远程登录s s h 等【l 】。 传输层在源节点和目的节点的两个进程之间提供可靠的、端到端的数据传 输。传输层的协议能够解决诸如可靠性和保证数据包按照正确的顺序到达的问 题。最重要的传输层协议是传输控制协议t c p ( i n t e m e tc o n l r o lm e s s a g e s p r o t o c 0 1 ) ,还有就是用户数据报文协议u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) 。t c p 协 议是一种可靠的、面向连接的传输机制,提供可靠的位元组流保证数据包完整、 无损并且按照顺序到达。u d p 是一种无连接的协议。 网络互连层解决单一网络上传输数据包的问题,负责数据转发和路由,处理 上层的发送请求,处理数据报与i c m p 报文,其中最核心的协议就是i p 协议,此 外还有i c m p ( i n t e m e tc o n t r o lm e s s a g e sp r o t o c 0 1 ) 、i g m p ( i n t e r n e tg r o u p m a n a g e m e n tp r o t o c 0 1 ) 、a r p ( a d d r e s sr e s o l u t i o np r o t o c 0 1 ) 2 1 。 t 其中网络接口层,涉及分组与网络接口,实现方式取决于具体的网络类型, 实际上并不是网络协议组的一部分。 o s i g ! , 型t c p i p 摸犁 舄毯 泛啄堪 会淆汪 f 输坯 秘络珐 数妊链路联 物理毯 碰婀搓 传输坛 两终f f 连垃 列络接l 垃 瑁,信息c = 冷数据流 数摄流c = 冷数据段 数据段c = 冷数据报 数掘报亡= : 鞭 图1 - 2 t c p i p 模型 发送 接收 数据漉c = 冷嘲,信息 数据段c = 冷数据渲 敬据碾c = 令数器段 帧c := 数据撮 天津大学硕士学位论文第一章绪论 1 2 路由协议简介 典型的路由选择方式有2 种:静态路由和动态路由。 静态路由是由网络管理员手工配置的路由信息,即在路由器中设置的固定的 路由表。当网络的拓扑结构或链路状态发生变化时,网络管理员需要手工去修改 路由表中相关的静态路由信息。静态路由信息在缺省下是私有的,不会传递给其 他的路由器。不过网络管理员也可以通过对路由器进行设置使其成为共享的。静 态一般用于网络规模不大、拓扑结构固定的网络中,使网络管理员易于了解网络 拓扑结构,以设置正确的路由信息。在所有路由中,静态路由优先级最高。 对于简单的网络,手工设置路由信息可以满足要求,但是网络的复杂性越来 越大,很难进行最合适的路由设置,同时网络的可维护性也很差。动态路由是路 由器之间相互传递路由信息,通过收到的路由信息来更新路由表的过程。它可以 实时地适应网络结构的变化。如果网络拓扑发生变化,那么路由选择软件就会重 新计算路由,并发出新的路由更新信息,这些信息通过网络使各个路由器各自更 新路由表,以动态地反应网络中的变化。网络拓扑复杂、规模大的网络一般采用 动态路由。动态路由需要支持额外的路由协议,有r i p 、b g p 、o s p f 等。最简单 的动态路由协议为r i p 协议。路由协议是路由器之间进行通信而采用的协议,当 启动了路由协议后,网络便具有自动更新路由表的功能。路由协议是路由器之间 共享路由信息的机制,允许路由器之间交换与维护路由信息。路由协议作为 t c p i p 协议族中重要成员之一,其选路过程实现的好坏会影响整个i n t e r n e t 网络的效率【j j 。 路由表项通过相互连接的路由器之间交换彼此的信息,按照一定的算法优化 出来,这些路由信息是在一定时间间隙内更新,来适应不断变化的网络,以便能 获得最优的路由。各种动态路由协议会不同程度地占用网络带宽和c p u 资源的。 当动态路由与静态路由发生冲突时,以静态路由为准。 1 3 网络架构及相关技术 路由器是网络中的核心设备。硬件路由器是在网络操作系统中包含路由软 件,而软件路由器产品是运行在w m d o w s 或l i n u x 等操作系统上。软件路由器 的结构:通用操作系统( 宿主:如l i n u x 系统、b s d ) + 路由软件( 寄生) + 各 种网卡。这种结构的主要特点是路由软件作为一个普通的应用程序运行在宿主操 作系统上,或者说作为个普通的设备运行在宿主操作系统上。而宿主操作系统 天津大学硕士学位论文第一章绪论 并不是专为网络应用设计,也可以运行其他的应用软件。 在这个项目中,采用l i n u x 系统作为宿主操作系统。主要是因为l i n u x 是开 放源代码的操作系统,除了l i n u x 内核免费之外,它的许多系统程序以及应用程 序也是自由软件,能从网上免费获得。选用运行在l i n u x 系统上的路由软件z e b r a , 能够实现多种路由协议模块,可以更加进一步理解各种路由协议的原理。同时, l i n u x 系统可以在各种硬件平台上运行,故在a r m 嵌入式平台上能选择l i n u x 系统作为操作系统,同时在其上运行z e b r a 路由软件实现路由功能。 在实现路由功能的基础之上,通过网络分析,利用网络探嗅软件,如自由软 件e t h e r e a l 来捕获网络中传送的数据包,分析数据包和当前的网络状况。 模拟网络环境是指因为局域网环境中很少会出现一些广域网存在的现象:延 时、重复、丢包等,那么在局域网下测试对于网络环境比较敏感的产品,不一定 适用于广域网,这时,就需要能动态实时仿真d 网络环境的工具来模拟网络环 境。n i s t n e t 就是这样一款基于l i n u x 系统的开源工具,工作在p 层时能模拟被 不同广域网环境影响后的端到端的临界性能特性。网络架构如图1 3 所示。 z e b x j a , i s j 蛇路l j lj 力能 ll e n l e l 嘲l 饿敢数犹:包 ll 。 - n i s t n e t 呋1 魁l 叫络巧、境礤拟 。 一:= 数铡包的转发 l i p _ _ 一 , 一:一= i l i n u k , x 系统 1 4 本文的主要工作 图1 3 网络架构 本文的主要工作是完成硬件方面的设计,完成a r m 底板和核心板的设计, 实现嵌入式的开发平台,以及在此平台下进行软件方面的移植,包括操作系统方 面的移植和应用程序的移植。利用l i n u x 操作系统作为宿主操作系统,开源软件 z e b r a 作为路由软件,e t h e r e a l 作为数据包截取和分析工具,在a r m 嵌入式开发 平台和p c 机平台实现数据包的转发一软路由,并且搭建起基于各种协议的基于 a r m 平台的路由器。同时利用n i s t n e t 实现网络环境的模拟。 最后,分析各种路由协议的原理( 第5 章) ,通过z e b r a 软件中关于路由协 议的源码来分析对应协议的工作原理。 天津大学硕士学位论文 第二章硬件平台的设计 第二章硬件平台的设计 a r m 嵌入式开发平台采用三星公司$ 3 c 2 4 1 0 处理器,具有丰富的接口:u s b 接口、串口和有线网口等,以及丰富的扩展能力,如图2 1 所示。主要硬件资源 如表2 1 所示。下面分别介绍电路和元件。 图2 1a r m 嵌入式开发平台结构 表2 1 主要硬件资源 硬件型号 描述 c p ua r m 9 2 0 t工作频率2 0 3 m h z 内存s d r a mh y 5 7 v 5 616 2 0 c t - h3 2 m b n a n df l a s h三星k 9 k l g 0 8 u o m y c b 01 2 8 m b 网络芯片 c $ 8 9 0 0 a u s b 网卡d m 9 6 0 1 芯片 天津大学硕士学位论文第二章硬件平台的设计 2 1 核心板 2 1 1 核心板的元件介绍 核心板的元件有:三星s 3 c 2 4 l o ( a r m 9 2 0 t 处理器核) 、h y 5 7 v 5 6 1 6 2 0 c t - h 内存颗粒、三星k 9 k 1 g 0 8 u o m y c b 0n a n df l a s h 芯片。核心板通过d d r 2 0 0 插槽与底板( 各种接口与电源部分) 相连。 $ 3 c 2 4 1 0 处理器是s a m s u n g 公司基于a r m ( a d v a n c e dr i s cm a c h i n e s ) 公 司的a r m 9 2 0 t 处理器核,采用0 1 8 u r n 制造工艺的3 2 位微控制器。该处理 器拥有:独立的1 6 k b 指令c a c h e 和1 6 k b 数据c a c h e ,m m u ( m e m o r y m a n a g e m e n tu n i t ) ,支持t f t 的l c d 控制器,n a n d 闪存控制器,3 路u a r t ( u n i v e r s a la s y n c h r o n o u sr e c e i v e rt r a n s m i t t e r ) ,4 路d m a ( d i r e c tm e m o r y a c c e s s ) ,4 路带p w m ( p u l s e 、矶d 也m o d u l a t i o n ) 的t i m e r ,i o 口,r t c ( r e a l t i m e c l o c k ) ,8 路1 0 位a d c ( a n a l o g t o d i g i t a lc o n v e r t e r ) ,i i c b u s ( i n t e ri n t e 莎a t e d c i r c u i t b u s )接口,i i s b u s ( i n t e r - i cs o u n d - b u s )接口,2 个u s b 主机, 1 个u s b 设备,m m c ( m u l t i m e d i ac a r d ) 接口和s p i ( s e r i a lp e r i p h e r a li n t e r f a c e ) 接口。$ 3 c 2 4 1 0 处理器最高可运行在2 0 3 m h z ,同时具有很低的功耗【4 】。 核心板采用的s d r a m ( s y n c h r o n o u sd y n a m i cr a n d o ma c c e s sm e m o r y ) 是 h y 5 7 v 5 6 1 6 2 0 c t h ,它是3 2 m b 的c m o s 同步d r a m ,适合于需要大的存储密 度和高带宽的应用。所有的同步操作参照时钟边沿触发,输入和输出是同步时钟 输入的上升沿触发,输入和输出电压都符合l v t t l 。工作频率为1 3 3 m h z ,拥有 存储空间为4 b a n k sx4 m b i t sx 1 6 。 核心板采用的闪存为三星k 9 k 1 g 0 8 u o m y c b 0n a n df l a s h 芯片。闪存不同 于s d r a m ,s d r a m 是动态随机存取存储器,存储阵列需要不断地刷新来保证数 据不丢失。闪存( f l a s hm e m o r y ) 是一种长寿命的非易失性存储器,在断电情况 下仍能保持所存储的数据信息,数据删除不是以单个的字节为单位,是以固定的 区块为单位,区块大小为2 5 6 k b 至02 0 m b 。n a n d 型闪存的地址线和数据线是共 用的i o 线。n a n d 器件使用复杂的i o 口来串行存取数据,8 个引脚用来传送控 制、地址和数据信息。n a n d 的写入速度很快,擦除速度为4 m s 。n a n d 读写操 作采用5 1 2 字节的块,故基于n a n d 的存储器能取代硬盘或其他块设备。这点不 同于n o r 型闪存能存储程序代码并直接运行于闪存。n a n d 型闪存成本低,容量 很大。核心板的闪存芯片采用k 9 k 1 g 0 8 u o m y c b 0n a n df l a s h 芯片, k 9 k 1 g 0 8 u o m y c b 0 是6 4 mx8b i tn a n df l a s hm e m o r y ,擦除1 6 字节的块需 要2 m s ,每个字节数据的读取周期为6 0 n s ,i o 引脚复用为数据地址输入输出、 天津大学硕士学位论文 第二章硬件平台的设计 控制输入嘲 21 2 核心板的设计 枷b 板集成了电源、c p u 、s d p a m 、f l a s h 等,引出t ; i - 部扩展所需的数据、 地址总线、外设接口、i o 信号等,采用6 层板设计,抗干扰性能强。电源部分 采用两个a m s l l l 7 芯片。a m s i l l 7 芯片能提供l5 v 、18 v 、2 5 v 、28 5 v 、33 v 和5 v 电压,它为$ 3 c 2 4 1 0 提供l8 v 电源,为h y 5 7 v 5 6 1 6 2 0 c t - h 和 k g k i g 0 8 u o m - y c b 0 提供33 v 电源。核心板的p c b 图如图2 - 2 所示。 2 2 底板 围2 2 桉心扳p c b 圈 底扳包括电源模块、复位模块、u s b 接口部分、有线网卡部分以及串口部 分。下面将分章节介绍各部分的元件和电路设计。 2 2 1 电源模块与复位模块介绍 2 2 1 1 元件介绍 电源模块中,由外接电源提供5 v 电压,经过2 个a m s l l l 7 芯片进行转换 7 天津大学硕士学位论文第二章硬件平台的设计 分别形成2 路3 3 v 电源,一路供给有线网卡,另一路供给底板上的其他模块。 复位模块,采用芯片7 4 h c l 4 ,选择7 4 h c l 4 主要是因为它是6 非门施密特 触发器,施密特触发器对输入信号的阈值非常敏感,对于信号有很好的整形作用。 通过7 4 h c l 4 将信号整形为方波 6 】。 2 2 1 2 原理图设计 电源模块的电路原理图如图2 3 所示,5 v 电源经过滤波后,有一路5 v 电压 直接供给核心板和u s b 接口模块,5 v 电压到达核心板后再经过2 片1 1 1 7 转换 成1 8 v 和3 3 v 电压供给各元件。同时还通过2 片a m s l l l 7 后分为2 路3 3 v 电 源,一路为2 片局域网芯片c s 8 9 0 0 提供工作电压3 3 v ,这样能够保证2 片有线 网卡稳定地工作;另一路为底板上的其他模块提供工作电源3 3 v 。 图2 3 电源模块的电路原理图 复位模块的电路原理图如图2 - 4 所示。图中。3 3 v 电源供给复位模块,复位 按键s 2 产生低电平,通过7 4 h c l 4 芯片的3 次反相及整形,得到r e s e t 信号。 r e s e t 信号供给两卡芯片c s 8 9 0 0 的r e s e t 复位端口,同时供给核心板的复位端, 其高低电平的变化使二者进行复位。 天津大学硕士学位论文第二章硬件平台的设计 图2 _ 4 复位模块的电路原理图 2 2 2 串口模块与u s b 模块 2 2 2 1 元件介绍 串口模块采用m a x 3 2 3 2 电平转换芯片,r s 2 3 2 标准规定逻辑1 的电平为 1 5 - - 3 v ,逻辑0 的电平为+ 3 + 1 5 v 。$ 3 c 2 4 1 0 带有两个u a r t 控制器,只要 把它们与m a x 3 2 3 2 相连,进行电平转换,就可以得到标准r s 2 3 2 串行接口。一 个m a x 3 2 3 2 芯片可以支持2 个串口的电平变换,我们选择其中的一组接口。 2 2 2 2 原理图设计 串口及u s b 模块的原理图如图2 5 所示。串口模块的原理图根据m a x 3 2 3 2 d a t a s h e e t 来连接,因为v c c 端接3 3 v 电压,所以为芯片内置的4 个电荷泵外接 电容c 2 5 、c 2 6 、c 2 7 、c 2 9 均为o 1 u f ,c 3 0 也为0 1 u f 。因为只采用一组电平 转换接口,故采用r i l n r 1 0 u t 、t i l n t 1 0 u t 。 u s b 差分信号,为了使信号抗干扰能力强,同时使数据稳定传输,采用差 分走线。因为,在p c b 板图绘制中,应先完成u s b 的差分走线,差分线尽量保 持同层、靠近,同时保证线间距在走线过程中的一致性,使用4 5 度弯角代替直 角,保持差分线的等长。 天津大学硕士学位论文 第二章硬件平台的设计 2 2 3 有线网卡模块 2 2 3 1 元件介绍 图2 - 5 串口及u s b 模块的原理图 有线网卡模块选用局域网处理芯片c i r r u sl o g i c 公司的c s 8 9 0 0 a c q 3 芯 片,其供电电压为3 3 v 。c s 8 9 0 0 a 包括片上r a m ,1 0 b a s e t 传输和接收滤波器, 以及带2 4 毫安驱动的直接i s a b u s 接口。其中4 k b 的片上r a m ,使其发送和 接收帧时的缓存在片内进行,提高了传输效率。c s 8 9 0 0 a c q 3 芯片支持硬件待 机、硬件挂起和软件挂起三种低功耗模式,在挂起模式下的能耗可达到微安级别, 降低了整个系统的功耗。s t r e a mt r a n s f e r 技术减少c p u 的开销,同时能减少8 7 无津大学硬士学位论文第二章硬件平台的设计 的在主机c p u 传输的块数据的中断。a u t o - s w i g c h d m a 能够使c s 8 9 0 0 a 最大限 度地提高吞吐量,同时减少丢失的帧。片上帧缓冲机制能够降低主机带宽,以便 管理以太阿流量。它独特的p a c k e t p a g e 结构可自动适应网络通信量模式的改变和 现有系统资源,从而提高系统效率。 2 2 3 2 原理圈设计 有线网卡模块原理圈如图2 - 6 所示。c s 8 9 0 0 a d ! q 3 芯片电源为33 v ,底板 电源5 v 供电经过1 1 1 7 转换后将一路单独3 3 v 电源e 3 v 3 供给c s 8 9 0 0 a ,并用 c 1 到c 1 0 共1 0 个0 l u f 的电容和1 个47 u f 的电容来滤波,保证有线网卡能够 稳定工作。在p c b 板设计中数据线、地址线需要保证各自的长度尽量相等, 在不同层问的走线尽量垂直,来保证稳定的数据传输速率。 天津丈学硕士学位论文第二章硬件平台的设计 釜。斗十- 鞫匠 莲嗑 豢礁 将_ _ 。1 0 卜 e 直;,e e = 娄芎- e 兰 羹难 鼍- = r 寸斗 煮露 窝乒 = = l e = = 篓爿棼 i 刮= 邕f 萱鲁;i 巨 剩基罄 三吾三马ii 辱三呈i t 竺二( 一 兰尊卫生: 孽! i 睦耋- 圜2 - 6 有线同卡模块原理图 2 2 4u s b 有线网卡简介 u s b 有线网卡是通过u s b 接r - ,采用d m 9 6 0 1 芯片来实现有线网卡功能。 符合u s b i1 规格附有l e d 指示灯,可以方便判断同路状态,支持t c p f i p 、 n e t b e u i 、i p x s p x 协议,适用于w m d o w s 、l i n u x ( l i n u x 24 26 内核) 操作系 统。它支持1 0 m b j s 及1 0 0 m b s 自动侦测功能,i e e e 8 0 23 x 流量控制功能。 d m 9 6 0 1 = 占片所提供的u s b 收发器与u s b l1 、1 0 1 0 0 m b s 、m a c 控制器、内存 控制器和外部接口兼容。 u s b 有线阿卡使用前需要先安装d m 9 6 0 1 在l i n u x 系统上的驱动,之后可 作为有线网卡使用 天津大学硕士学位论文 第二章硬件平台的设计 2 3 本章小结 本章主要介绍了嵌入式a r m 的硬件架构,包括核心板和底板。核心板是 a r m 开发板的核心,包括$ 3 c 2 4 1 0 、s d r a m 和f l a s h ,为底板提供接口。底板 包括了两个有线网卡,外接u s b 网卡,以及复位模块、电源模块等,基本满足 搭建路由环境的需求。 天津大学硕士学位论文第三章软件环境的搭建 第三章软件环境的搭建 在软件环境中,采用l i n u x 操作系统。l i n u x 是开放源代码的操作系统,除 了l i n u x 内核免费之外,本课题需要用到的z e b r a 路由软件、e t h e r e a l 网络分析 软件、n i s t n e t 网络环境模拟软件都是开源软件。这就为后来分析路由协议提供 了方便。在搭建软件环境方面,主要包括p c 平台的软件环境搭建和嵌入式平台 的软件环境搭建,有u b o o t ( b o o t l o a d e r ) 的移植与编译、l i n u x 内核的编译与 安装、根文件系统的移植、z e b r a 的移植、n i s t n e t 的移植( 包括对l i n u x 内核配 置的修改与重新编译) 、e t h e r e a l 的编译、驱动的编译等。开发流程如图3 1 所示。 3 1 交叉编译环境 i 定义编i 予器的,友装 j l 董b o t l o a d e r 移枵i l l i n u x i 内移移辘 微文件系统, :发 j 与 陂闱程i 开发 图3 1 开发流程 交叉编译是指在一个平台上生成另一个平台的可执行代码。这里所说的平台 是指体系结构( a r c h i t e c t u r e ) 和操作系统( o p e r a t i n gs y s t e m ) 二种平台。计算机平 台上的软件,可以在计算机本身的平台上通过编译的方式,把使用高级计算机语 言编写的代码( 比如c 代码) 编译成计算机可以识别和执行的二进制代码【7 j 。 而在嵌入式系统开发时,比如a r m 平台,由于自身的有限的存储空间和运 算能力,进行本机编译就不太可能了。这是因为一般的编译链接( c o m p i l a t i o nt o o l c h a i n ) 需要很大的存储空间,并且需要很强的c p u 运算能力。所以,通过交叉 天津大学硕士学位论文第三章软件环境的搭建 编译工具,我们就可以在c p u 能力很强、存储控件足够的主机平台上( 比如p c 上) 编译出针对其他平台的可执行程序。 要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具链( c i o s s c o m p i l a t i o nt o o lc h a i n ) ,然后用这个交叉编译工具链编译我们的源代码,最终生 成可在目标平台上运行的代码。在l i n u xp c 上,利用a r m l i n u x g c c 编译器, 可编译出针对l i n u x a r m 平台的可执行代码。交叉编译环境也可自己制作, 但是自己制作的交叉编译器可能存在些问题,在编译过程中会出现错误。 在本设计中,最终要将程序运行在a r m 平台,所以要建立a r m l i n u x 的 交叉环境,以生成可在a r m 平台上运行的可执行代码。由于编译a r l i l 1 i n u x g c c 编译器时会寻找l i n u x 内核头文件,需要将l i n u x 内核头文件l i n u x 一2 6 1 4 i n c l u d e 下的l i n u x 、a s l n a r l n 、a s m g e n e r i c 文件夹复制到a n n 1 i n u x i n c l u d e 文件夹下。 准备好内核头文件后,依次安装b i n u t i l s 2 1 6 、g l i b c 头文件、g c c 3 4 4 、g l i b c 。 安装完毕后,a r m 平台的交叉编译链已安装成功。u b o o t 、l i n u x 内核、根文 件系统、应用软件都需要在交叉编译环境下进行编译。 3 2u b o o t 3 2 1b o o t l o a d e r 简介 对于一个嵌入式l i n u x 系统从软件角度看通常可以分为4 个层次:引导加载 程序、l i n u x 内核、文件系统、用户应用程序。其中,引导加载程序包括固化在 固件( f i r e w a r e ) 中的b o o t 代码( 可选) 和b o o t l o a d e r 2 大部分。l i n u x 内核包括需 定制的内核和需配置的内核的启动参数。文件系统包括根文件系统的编译【8 】。 引导加载程序是系统加电后运行的第1 段软件代码。计算机的引导加载程序 便是由b i o s 和位于硬盘m b r 中的操作系统b o o t l o a d e r ( l i l o 、g r u b 等) 组 成。在嵌入式系统中,并没有像b i o s 那样的固件程序,因此整个系统的引导加 载都是由b o o t l o a d e r 完成。实际上,b o o t l o a d e r 就是l i n u x 系统内核运行之前 所运行的一段程序。通过这段程序,可以初始化硬件设备、建立内存空间映射, 设置系统的软硬件环境为合适的状态,为最终调用操作系统内核提供正确的环 境。b o o f l o a d e r 与底层硬件更为相关,即每个不同配置的目标板基本都有不同的 b o o f l o a d e r 。支持a r m 架构的b o o t l o a d e r 主要有u b o o t 和、,i v i 等。 天津大学硕士学位论文 第三章软件环境的搭建 3 2 1u b o o t v 】和u b o o t 都是b o o t l o a d e r 的一种。、1 i 是专门针对2 4 1 0 设计 的。而u b o o t 是比较通用的,可以通过修改配置用到不同的硬件平台上去。 因为u b o o t 是通用的b o o t l o a d e r ,方便移植到硬件平台上,并且具有较高的 可靠性和稳定性,所以选择u b o o t 作为启动引导程序。 u b o o t 是一个公开源码的b o o t l o a d e r 程序。它支持一些系列的a r m 体 系,包含常见的外设的驱动,是一个功能强大的板极支持包。u b o o t 可支 持的主要功能为:系统引导、支持n f s 挂载、从f l a s h 中引导压缩或非压 缩系统内核、设备驱动如串口、s d r a m 、f l a s h 、以太网、l c d 、n v r a m 、 e e p r o m 、键盘、u s b 、p c m c i a 、p c i 、r t c 等驱动支持。 u b o o t 启动过程分为3 个阶段【9 】。 1 第1 个阶段是在f l a s h 中运行汇编程序,进行基本硬件初始化,并 将f l a s h 中的启动代码复制到s d l l a m 中,开始再运行c 程序。汇编程序就 是s t a r t s ,位于u b o o v c p u a r m 9 2 0 t 中,上电后,a r m 处理器首先会执 行该程序。s t a r t s 程序基本流程就是设置异常向量表、处理器时钟初始化、 内存控制器初始化、搬移代码到s d r a m 中、初始化堆栈、跳转到s d k a m 中执行等。 2 跳转到s d r a m ,先初始化硬件,同时向终端输出启动信息,其实 对内存空间初始化、配置环境变量、设备初始化等。 3 第3 步是将内核映像和根文件系统映像从f l a s h 拷贝到s d r a m 中,为 内核设置启动参数,进入到内核的入口函数。 3 2 2u b 0 0 t 源码修改与编译 u b o o t 支持一些系列的a r m 体系,根据a r m 开发板所用的硬件资源, 需要对u b o o t 源码进行一些针对性的修改,来匹配开发板的硬件。需要进行 的修改如下: 1 使用的是u b o o t 是1 1 4 版本。 2 在b o a r d s m d k 2 4 1 0 文件夹下建立n a n dr e a d c 文件。b o a r d 文件夹里存放 的都是一些与已有开发板相关的文件,在此建立n a n dr e a d c 是对n a n df l a s h 进 行配置并实现读取功能。u b o o t 启动时,需要将u - b o o t 复制到r a m 中去, 通过自己定义的n a n dr e a d c 实现。 ( 1 ) 首先定义n a n df l a s h 的配置寄存器地址为0 x 4 e 0 0 0 0 0 0 。 # d e f i n en fb a s e0 x 4 e 0 0 0 0 0 0 天津大学硕士学位论文 第三章软件环境的搭建 ( 2 ) 分别定义n a n df l a s h 寄存器的地址。 n a n df l a s h 配置寄存器( n f c o n f )
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 4315.2-2026光学传递函数第2部分:测量导则
- 高中英语教资面试试讲题库含答案
- 初中数学教资面试结构化经典例题试卷含答案
- 2026高中英语教资面试试讲易错题试卷含解析
- 计算机零部件装配调试员标准化水平考核试卷含答案
- 反应香精配制工创新思维能力考核试卷含答案
- 重金属回转窑焙烧工操作评优考核试卷含答案
- 酵母营养盐工岗前能力评估考核试卷含答案
- 超硬磨料制造工安全演练测试考核试卷含答案
- DB61T 5166-2026 房屋市政工程施工安全风险评价与管控规程
- 幼儿园安全家委会
- 【MOOC答案】《中国文化传承与科技创新》(北京邮电大学)中国慕课章节作业网课答案
- 2022浪潮英政服务器CS5260H2用户手册
- 【MOOC】电机与拖动-浙江大学 中国大学慕课MOOC答案
- 农村土地使用权转让协议书
- 北京市第四十三中学2024-2025学年高一数学上学期期中试题
- 《思政课程群》4坚持全面深化改革总目标
- 麦当劳公司的控制系统
- 《大学生安全教育》课件-第八课 社会实践安全
- 赣州市中小学教学常规
- 中医医疗技术相关性感染预防与控制课件PPT幻灯片
评论
0/150
提交评论