(电磁场与微波技术专业论文)嵌入式系统在pdh网络管理系统中的应用.pdf_第1页
(电磁场与微波技术专业论文)嵌入式系统在pdh网络管理系统中的应用.pdf_第2页
(电磁场与微波技术专业论文)嵌入式系统在pdh网络管理系统中的应用.pdf_第3页
(电磁场与微波技术专业论文)嵌入式系统在pdh网络管理系统中的应用.pdf_第4页
(电磁场与微波技术专业论文)嵌入式系统在pdh网络管理系统中的应用.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(电磁场与微波技术专业论文)嵌入式系统在pdh网络管理系统中的应用.pdf.pdf 免费下载

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

文档简介

华中科技大学硕士学位论文 摘要 f 嵌入式系统注重于具体的应用,对于不同的应用,对嵌入式系统的性能要求也 t t 不同,这样在构建具体的嵌入式系统时,需要针对具体的应用来实施。士 本篇论文基于对p d h 光端机实现网络化管理的需要,深入分析了对于这个具体 的应用,如何构建嵌入式系统来满足应用的要求,以及构建中的一些典型的工作和 问题: l简单介绍了嵌入式系统的发展和应用前景,以及应用嵌入式l i n u x 系统 一。一 的优势与不足。 2 介绍了一般嵌入式系统中的典型开发工作,比如内核改造,驱动设计,以及 在种具体的嵌入式系统,u c l i n u x ,上如何开发应用。论述了在u c l i n u x 和通 用l i n u x 上开发应用的异同,包括内存管理和多进程实现。 3 详细论述了如何在m t d 进行一般f l a s h 的驱动开发,解析了m t d 子系统 的设计思想和实现原理。并给出了在种具体f l a s h 设备上如何开发驱动 的倒子。 4 论述了如何在嵌入式系统下进行交叉应用设计,包括与单片机进行串口通 信,与网络终端通信。 5 最后是对工作的总结以及将后需要改善的地方。、上 关键词:嵌入式系统、u c l i n u x m t d ( f l a s h 网络管理 , 华中科技大学硕士学位论文 a b s t r a c t e m b e d e d s y s t e mf o c u si nt h ea p p l i c a t i o n s b u i l d i n gt h ee m b e c l d 啦s y s t e m v a r i e sw i t h t h ed i f f e r e n ta p p l i c a t i o n s s o ,b u i l d i n gs o m es p e c i f i c a l e a n b e d d e ds y s t e mb a s eo nt h e s p e e i f i c a la p p l i c a t i o n t h i st h e s i sb a s e so nt h en e e df o rt h en e t w o r km a n a g e m e n ts y s t e mf o rt h ep d h e q u i p m e n t , d e e p l ya n a l y z e sh o w t ob u i l dt h ea p p r o p r i a t es y s t e mt os a d s f yt h ed e m a n do f t h ea p p l i c a t i o n a n di n t r o d u c es o m et y p i c a lw o r k d u r i n gt h eb u i l d i n g 1 i n t r o d u c e st h ed e v e l o p m e n ta n d f o r e g r o u n d o f t h ee m b e d d e d s y s t e ms i m p l y , a n d t h ea d v a n t a g ea n ds h o r t a g eo f t h ee m b e d d e dl i n u xs y s t e m 2 i n t r o d u c e ss o m e t y p i c a l w o r k d u r i n g t h e b u i l d i n g s u c h a sr e d u c e st h e k e r n e l ,d e s i g no fd r i v e r a n dh o w t o d e v e l o pt h ea p p l i c a t i o nu n d e rak i n do f e m b e d d e ds y s t e mn a m e du c l i n u x 3 d i s c u s sh o wt o d e v e l o p t h ed r i v e rf o ra g e n e r a l f l a s hd e v i c eu n d e r l v l t d a n a l y s e t h ed e s i g ni d e aa n dt h er e a l i z ep r i n c i p l eo f t h em t d s y s t e m a n d s h o w a e x a m p l e o f h o w t o d e v e l o p t h e d r i v e r 0 1 1 r s p e c i f i c a l l i 8 1 d w a f e 4 f o c u s0 1 1t h e d e s i g n o ft h e a p p l i c a t i o np r o g r a m i n c l u d e t h es e r i a l c o m m u n i c a t i o nm o d u l e , n e t w o r kc o m m u n i c a t i o nm o d u l ea n d u t i l i t ym o d u l e 5 t h el a s ti ss u m m a r i z a t i o no f p a s tw o r ka n d p r o s p e c to f t h e f u t u r ew o r k k e y w o r d :e m b e d e ds y s t e m u o i n u xm t df l a s hn e t w o r k m a n a g e m e n t 华申科技大学硕士学位论文 1 前言 l i n u x l l , ,一种可以运行于个人电脑上的类u n i x 的操作系统,问世于1 9 9 1 年。 它在出现之初,就立刻以其自身独特的自由、奔放、免费的形式吸引了世界范围内 的大量优秀计算机技术人员,投入到对它的开发和不断的完善工作之中去,这个人 类历史上最大的软件工程就这样被在全世界的范围内启动了:在经过十年的发展后, 今天的l i n u x 操作系统已经在全球范围内掀起了一股愈演愈烈的l i n u x 风暴,并逐渐 渗透到了几乎所有与r r 产业相关的领域,直接威胁到了w i n d o w s 等商业操作系统的 市场地位。同时,l i n u x 所具备的稳定、高效、易定制、易裁减、硬件支持广泛等特 点,结合上其所独具的免费、开放源代码等特征,使得l i n u x 在近两年内迅速崛起 成为嵌入式领域的一批黑马。 用于嵌入式设备的计算机几乎和计算机本身的历史一样长久,并且随着计算机 技术的发展,嵌入式系统已成为计算机领域的一个重要组成部分。所谓嵌入式设备 是指具有计算机功能,但又不称为计算机的设备或器材。它几乎包括了我们周围的 所有电器设备:掌上p d a ,移动计算设备,电视机顶盒,手机上网,多媒体,汽车, 镘波炉,家庭自动化系统,电梯,安全系统,自动售货机医疗仪器,立体音响,蜂 窝式电话,自动取款等等。据统计,每年只有1 0 2 0 的计算机芯片是为台式或手 提电脑设计的,这也意味着每年有1 2 b i l l i o nc p u 是为嵌入式设备而设计制造的。越 来越多的设备需要复杂的嵌入式操作系统,因此为了适应嵌入式设备的复杂性和多 样性,缩短其开发周期,嵌入式操作系统应运而生。 中国有世界上最大的家用电子产品消费市场,彩电,v c d ,游戏机,学习机的 拥有量都居世界第一;随着消费结构的改变,人们对家电的灵活性的可控性提出了 更高的要求;这些只能通过家电的数字化和网络化来实现;随着电话通信费用和通 信类电子产品的价格进一步下调,p d a 结合数字手机将成为今后个人数据通信和事 务处理的最佳选择;同时对于现代化的医疗,测控仪器以及和机电产品也需要有专 门的嵌入式系统软件的支持。这些需求极大的刺激了国内嵌入式系统的发展和产业 化的进程,嵌入式产品可分为如下几类: 信息家电 移动计算设备 网络设备 工控,仿真设备 1 1 嵌入式系统发展趋势 华中科技大学硕士学位论文 以信息家电为代表的互联网时代嵌入式产品,不仅为嵌入式市场展现了美好前 景,注入了新的生命;同时也对嵌入式系统技术,特别是软件技术提出新的挑战。 这主要包括:支持日趋增长的功能密度、灵活的网络联接、轻便的移动应用和多媒 体的信息处理,此外,当然还需对付更加激烈的市场竞争。 钆嵌入式应用软件的开发需要强大的开发工具和操作系统的支持 随着因特网技术的成熟、带宽的提高,i c p 和a s p 在网上提供的信息内容日趋 丰富、应用项目多种多样,像电话手机、电话座机及电冰箱、微波炉等嵌入式电子 设备的功能不再单一,电气结构也更为复杂。为了满足应用功能的升级,设计师们 方面采用更强大的嵌入式处理器如3 2 位、6 4 位r i s c 芯片或信号处理器d s p 增强 处理能力;同时还采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性, 简化应用程序设计、保障软件质量和缩短开发周期。 目前,国外商品化的嵌入式实时操作系统,已进入我国市场的有w i n d r i v e r 、 m i c r o s o f t 、q n x 和n u c l e a r 等产品。我国自主开发的嵌入式系统软件产品如科银 ( c o r e t e k ) 公司的嵌入式软件开发平台d e l t a s y s t e m ,它不仅包括d e l t a c o r e 嵌入式实时 操作系统,而且还包括l a m d a t o o l s 交叉开发工具套件、测试工具、应用组件等;此外, 中科院也推出了h o p e n 嵌入式操作系统。 b 联网成为必然趋势 为适应嵌入式分布处理结构和应用上网需求,面向2 1 世纪的嵌入式系统要求配 备标准的一种或多种网络通信接口。针对外部联网要求,嵌入设备必需配有通信接 口,相应需要t c p ,口协议簇软件支持;由于家用电器相互关联( 如防盗报警、灯光能 源控制、影视设备和信息终端交换信息) 及实验现场仪器的协调工作等要求,新一代 嵌入式设备还需具备i e e e l 3 9 4 、u s b 、c a n 、b l u e t o o t h 或i r d a 通信接口,同时也 需要提供相应的通信组网协议软件和物理层驱动软件。为了支持应用软件的特定编 程模式,如w e b 或无线w e b 编程模式,还需要相应的浏览器,如h t m l 、w m l 等。 c 支持小型电子设备实现小尺寸、微功耗和低成本 为满足这种特性,要求嵌入式产品设计者相应降低处理器的性能,限制内存容 量和复用接口芯片。这就相应提高了对嵌入式软件设计技术要求。如,选用最佳的 编程模型和不断改进算法,采用j a v a 编程模式,优化编译器性能。因此,既要软件 人员有丰富经验,更需要发展先进嵌入式软件技术,如j a v a 、w e b 和w a p 等。 正提供精巧的多媒体人机界面 嵌入式设备之所以为亿万用户乐于接受,重要因素之一是它们与使用者之间的 亲和力,自然的人机交互界面,如司机操纵高度自动化的汽车主要还是通过习惯的 方向盘、脚踏板和操纵杆。人们与信息终端交互要求以g u i 屏幕为中心的多媒体界 面手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像已取得初步 华中科技大学硕士学位论文 成效。目前一些先进的p d a 在显示屏幕上已实现汉字写入、短消息语音发布,但离 掌式语言同声翻译还有很大距离 1 2 嵌入式l i n u x 系统的优势与发展 嵌入式l i n u x l 2 , 7 1 的优势 乱l i n u x 系统是层次结构且内核完全开放。l i n u x 是由很多体积小且性能高的微内 核和系统组成。在内核代码完全开放的前提下,不同领域和不同层次的用户可以 根据自己的应用需要很容易地对内核进行改造,在低成本的前提下,设计和开发 出真正满足自己需要的嵌入式系统。 b 强大的网络支持功能。l i n u x 诞生于因特网并具有u n i x 的特性,这就保证了它 支持所有标准因特网协议,并且可以利用l i n u x 的网络协议栈将其开发成为嵌入 式的t c p i p 网络协议栈。 c l i n u x 具备一整套工具链,容易自行建立嵌入式系统的开发环境和交叉运行环 境,并且可以跨越嵌入式系统开发中仿真工具的障碍。一般开发嵌入式操作系统 的程序调试和跟踪都是使用仿真器来实现的,而使用l i n u x 系统做原型的时候, 可以绕过这个障碍,直接使用内核调试器来做操作系统的内核调试和查错。 d l i n u x 具有广泛的硬件支持特性。无论是r i s c 还是c i s c 、3 2 位还是6 4 位等 各种处理器,l i n u x 都能运行。l i n u x 最通常使用的微处理器是i n t e lx 8 6 芯片家族, 但它同样能运行于m o t o r o l a 公司的6 8 k 系列c p u 和i b m 、a p p l e 、m o t o r o l a 公司的 p o w e r p cc p u 以及i n t e l 公司的s t r o n ga r mc p u 等处理器系统,这意味着嵌入式 l i n u x 将具有更广泛的应用前景。 嵌入式l i n u x 面临的挑战 目前,嵌入式l i n u x 系统开发正在蓬勃兴起,并且已经开辟了很大的市场,除 了一些传统的l i n u x 公司,像r e d h a t 、 c al i n u x 等正在从事嵌入式l i n u x 的研究之 外,一批新公司( 如l i n e o 、t i m e s y s 等) 和一些传统的大公司( 如m m 、s g i 、m o t o r o l a 、 i n t e l 等) 以及一些开发专有嵌入式操作系统的公司( 如l y n x ) 也正在进行嵌入式l i n u x 的研究和开发。但就目前的技术面言,嵌入式l i n u x 的研究成果与市场的真正需求 还有一段差距。因此,要开发出真正成熟的嵌入式l i n u x ,还需要从以下几个方面进 行努力。 乱扩充l i n u x 的实时系统 华中科技大学项士学位论文 一l 宣_ l 目i l 田_ i 摹鼍罱暑;鲁| 昌= 昌鲁昌l = 鲁昌昌l 昌= 薯= 篁葛= = = = = 我们知道,高实时性是嵌入式操作系统的基本要求。由于l i n u x 是一种通用操 作系统,而不是一个真正的实时操作系统,内核不支持事件优先级和抢占实时特性。 所以,在开发嵌入式l i n u x 的过程中,首要问题是扩展l i n u x 的实时性能。一般来说, 对l i n u x 实时饿的扩展可以从两方面进行:向外扩展和向上扩展。向外扩展是从范围 上扩展,让实时系统支持的范围更广,支持的设备更多。目前的开发所面向的设备 一般仅限于较简单的有实时要求的串并口数据采集、浮点数据计算等,而像实时网 络这样实时系统的高级应用还需进一步的发展。向上扩展是扩充l i n u x 内核,从功 能上扩充l i n u x 的实时处理和控制系统。如嵌入式系统r t l i n u x ,它的基本原理是 将l i n u x 的内核代码做一些修改,将l i n u x 本身的任务以及l i n u x 内核本身作为一个 优先级最低的任务,而实时任务作为优先级最高的任务,即在实时任务存在的情况 下运行实时任务,否则就运行l i n u x 本身的任务,实时任务不同于l i n u x 普通进程, 它是以l i n u x 的内核模块( l o a d a b l e k e r n e l m o d u l e ,l k m ) 的形式存在的,需要运行实 时任务的时候,将这个实时任务的内核模块插入到内核中去,实时任务和l i n u x 一 般进程之间的通信通过共享内存或者f i f o 通道来实现。 b 改变l i n u x 内核的体系结构 l i n u x 的内核体系采用的是m o n o l i t h i c ,在这种体系结构中,内核的所有部分都 集中在一起,而且所有的部件在一起编译连接。这样虽然能使系统的各部分直接沟 通,有效地缩短任务之间的切换时间,提高了系统的响应速度,实时性好并提高了 c p u 的利用率,但在系统比较大的时候体积也比较大,与嵌入式系统容量小、资源 有限的特点不符合。而另外一种内核体系结构m i c r o k e m e l ,在内核中只包括了一 些基本的内核功能如创建和删除任务、任务调度、内存管理和中断处理等部分,而 文件系统、网络协议栈等部分都是在用户内存空间运行。这种结构虽然执行效率不 如m o n o l i t h i c 内核,但大大减小了内核的体积,同时也极大地方便了整个系统的升 级、维护和移植,因此更能满足嵌入式系统的特点需要。为此,为使嵌入式l i n u x 的应用更加广泛,可以考虑将l i n u x 目前的m o n o l i t h i c 内核结构中的部分结构改造成 m i c r o k e r n e l 体系结构通过这种折中办法,可以使得到的l i n u x 既具有很好的实时 性,又能满足嵌入式系统体积小的要求。 c 完善l i n u x 的集成开发环境 提供完整的集成开发环境是每一个嵌入式系统开发人员所期待的。一个完整的 嵌入式系统的集成开发环境一般需要提供的工具是编译连接器、内核调试僳踪器和 集成图形界面开发平台。其中的集成图形界面开发平台包括编辑器、调试器、软件 仿真器和监视器等。在l i n u x 系统中,具有功能强大的g c c 编译器工具链,使用了基 于g n u 的调试器g o b 的远程调试功能,一般由一台客户机运行调试程序调试宿主机 运行的操作系统内核;在使用远程开发时还可以使用交叉平台的方式,如在w i n d o w s 平台下的调试跟踪器对l i n u x 的宿主系统做调试。但是,l i n u x 在基于图形界面的特 定系统定制平台的研究上,与w m d o w s 操作系统相比还存在差距。因此,要使嵌入 4 华中科技大学硕士学位论文 e j i _ i _ _ = _ _ i = _ _ _ _ 目目i _ = j 目;_ = = = = = l i = = # ;i = = ;= ;= = 一 式l i n u x 在嵌入式操作系统领域中的优势更加明显,整体集成开发环境还有待提高 和完善。 嵌入式l i n u x 的发展及应用前景 根据一家专门进行嵌入式l i n u x 系统信息发布的网站 h 娃- p :l ! w w w l i n u x d e v i c e s c o m 的调查,有5 2 的用户决定在未来2 4 个月内使用l i n u x 作为嵌入式系统的开发原型,而只有2 1 的人仍然使用专有操作系统,1 9 的人仍 然使用w m d o w s 系列操作系统做嵌入式系统开发。这充分说明了利用l i n u x 开发嵌 入式系统的生命力。由于l i n u x 嵌入式系统的强大的生命力和利用价值,越来越多 的公司和大学都不同程度地表现出对它的研究兴趣。 a 蓝点软件公司已经将嵌入式应用确立为公司未来的业务发展方向,并且成立 了蓝点软件( 北京) 研发中心,主要研发方向是为互联网接入设备、机顶盒、w e bt v 和瘦客户机开发嵌入式操作系统,目前蓝点软件公司已经为i n t e l 、美国国家半导体、 c i r r u sl o g i c 、w m b o n d 和t o s h i b a 等厂商提供了蓝点嵌入式l i n u x 操作系统。 b 博利思公司是专门开发嵌入式l i n u x 操作系统的厂商,目前是为认设备和信 息家电的嵌入式芯片提供操作系统。2 0 0 1 年,博利思的主要研发目标是优化该操作 系统,重点是为系统增加实时的电源管理功能和嵌入式浏览器,并且提供完善的开 发工具。 c 共创软件联盟是嵌入式l i n u x 操作系统应用领域中不可忽视的一股力量,该 联盟由国家“8 6 3 计划”智能计算机专家组牵头,联合国内数十家软件企业、科研机构 和大专院校,目标产品是机顶盒和p d a 。该联盟非常明确地将自己定位于l i n u x 操 作系统供应商,继2 0 0 0 年推出c c l i n u x1 o 版之后,2 0 0 1 年将推出2 o 版。国外的 开发如火如荼,国内的开发也不甘示弱。“8 6 3 计划”重点支持项目中就有使用l i n u x 作为嵌入式系统开发的方向。除此之外,中科红旗、中软等公司也同样将嵌入式系 统的开发作为自己的主要发展方向之一。 d 由于l i n u x 具有对各种设备的广泛支持性,因此,它能方便地运用于机顶盒、 认设备、p d a 、掌上电脑、w a p 手机、寻呼机、车载盒以及工业控制等智能信息产 品中。与p c 相比,手持设备、l a 设备以及信息家电的市场容量要高得多,因此, 众多l i n u x 厂商把发展的重点放在嵌入式应用领域也就不足为奇了。相信嵌入式 l i n u x 在不久的将来将成为嵌入式系统领域的一朵奇葩。 1 3 本论文的工作背景及内容安排 1 3 1 背景与工作内容 5 华中科技大学硕士学位论文 - t l ;= j _ ,- 自自_ ;= j 口= = ;= = = ;_ e t l = = = 自自= = 目= g i ;i j = = = = = = 深圳安立达通信设备有限公司是一家集生产,销售光传输和接入设备为一体的 民营企业。其产品有光纤收发器和光端机两类。随着产品的不断更新,新技术,新 思想的不断涌现,以及用户的反馈信息,我们觉得,对设备实现网络化的管理是大 势所趋。本论文就是基于对p d h 光端机实现网络化管理而设计的。 光端机是一种光传输设备,常常运行在远端无人值守站,这样,管理该机器就 成为一个费力费时的问题。随着网络的普及,网络化的管理也成为一种潮流,这种 管理方式最大的一个优点就是通过提供一种远程的入机界面来实现远程管理,其操 作方便,而功能也很强大。 实现这样一个网络管理系统显然需要设备具有接入i n t e r n e t 的能力,而仅仅 用一个控制环来实现t c p i p 以及应用程序,将会是一件非常复杂的任务。在各种嵌 入式系统愈演愈烈的今天,选择一种嵌入式操作系统来接入网络显然是最明智的选 择。l i n u x 是开放源代码的现代操作系统,这一特点在用作嵌入式系统中具备很好的 优势,因为便于裁减。我们在设计中选用了u c l i n u x 操作系统。它很成熟,并且可用 的工具也很多。 整个设计的工作内容分为以下几个具体的方面: 用m t d 实现f l a s h 设备的驱动,以及实现j f f s 文件系统。 l i n u x 系统的2 4 内核版本提供了一种称为m t d 的内核子系统,它专门针对各 种内存设备而设计,为这些设备的驱动提供了一个抽象层,使驱动的实现只需要专 注于底层与硬件进行交互的代码的编写。我们的嵌入式u c l i n u x 实现的是r o m f s ,它 只能读,当断电或r e s e t 后,f l a s h 里的数据全部丢失。因此我们必须实现一种断电 后可保存数据的文件系统来保存设备的相关数据,比如设备的i p , g a t e w a y ,以及光 端机的一些运行记录和事件日志。 在u c l i n u x 下进行应用程序的设计,包括网络通信模块,串口通信模块,本地 数据处理模块以及网络设置工具模块。 u c l i n u x 不同于通甩的l i n u x ,它对原来的l i n u x 进行了高度的裁减,并主要针 对无m m u 的c p u 来设计。因此在内存管理以及多进程管理上都和通用的l i n u x 有 很大的区别。在应用程序的设计中要了解到这些不同,以保证应用程序运行的性能。 设置嵌入式系统的引导程序。 嵌入式系统一般没有b i o s ,如何引导驻留在f l a s h 或r o m 上的嵌入式操作 系统呢? 我们没有写自己的b o o t l o a d e r ,那是一个艰巨的任务,也是不必要的,我们 选择了网络上流行的一个免费引导程序b o o t l o a d e r 来引导u c l i n u x 。根据具体型号的 f l a s h ,进行一些相关的设置,就可以应用b o o t l o a d e r 了。 6 华中科技大学项士学位论文 l _ _ _ 胃目- _ 墨- 昌_ 鲁昌昌昌昌翻罱昌暑罱昌_ 皇号昌罱鲁= 蕾篁掌皇互毫= = = 1 3 2 设备介绍 p d h 光端机简介 b y l i n k 系列光端机是深圳安立达通信设备有限公司自主研制和生产的 中、低容量p d h 光传输和接入设备。采用了最新的技术和专用的超大规模可编 程集成电路,提供e 1 、2 x e l 、3 x e l 、4 x e l 、8 x e l 、t 6 - x e l 的数字信号的 复接分接和光电转换。丰富的比特开销不仅提供各种容量的主通道业务传输, 如:e l g 7 0 3 接口、基于2 0 4 8 k b i t s 的v 3 5 和1 0 b a s e t 接口;同时还提供v 2 4 和v 2 8 低速率数据通道、公务联络通道、网络管理通道。 b y l i n k 系列光端机具有2 m 支路的远端环回功能,便于测试和故障定位。 设备具有完善的故障自诊断功能,提供光传输链路告警、2 m b i t s 支路告警和声 音告警。 设备采用i b l h 线路编码,支持双纤双向模式和单纤双向模式。多种机型 可供选择,满足不同需求。适合于点对点光传输链路,为公众网和专网提供高 质量、灵活可靠的光传输数字电路。 该光端机具有集成度高、可靠性强、功耗低、体积小、功能齐全等特点, 在恶劣的环境下亦能稳定工作。整机安装无任何可调整点,使用方便,维护简 单。 p d h 光端机信息管理 p d h 光端机是应用于光纤通信网络局端接入的电信设备,共有1 2 块用户板, 通过一块内嵌l i n u x 操作系统的网络管理板来接入i n t e r a c t ,它不同于一般的p c , 所需要管理的信息也与它具体的功能相关,并且是相当少和简单的。主要有以下 一些信息需要监控和管理。 a 电源管理。 b 链路管理,共有1 2 8 路链路,监控其通断。 c 通信质量管理,监控每块板的误码率,分三个级别。 外观及尺寸参数 乱前面板 图1 1 光i 皇机前面扳 7 华中科技大学硕士学位论文 b 后面板 d 尺寸 图1 2 光端机后面扳 m c f 5 2 7 2 开发板简介 图1 3 光端机尺寸 m c f 5 2 7 2 微处理器是迄今为止摩托罗拉推出的最高集成度的c o l d f i r e 微处理 器。凭借附加的1 0 1 0 0 以太网控制器和一个u s b 模块,m c f 5 2 7 2 集成通信微处理 器将c o l d f i r e 系列的集成水平提升至更高。快速以太网媒体存取控制( m a c ) ,支 持1 0 0 m b p sm i i ,1 0 m b p sm i i 和1 0 m b p s7 一w i r e 物理接口,合乎u s b l 1 标准,可操 作内或外收发器的设备控制器( d e v i c ec o n t r o l l e r ) 时分复用( t d m ) 控制器,可使产品 以物理级水平与外部编码、i s d n 收发器以及其它使用g c i ( g e n e l , a lc i r c u i ti n t e r f a c e ) 或m l i ( i n t e r c h i pd i g 眦l i n k ) 串行接口协议的外围设备连接多信道h d l c 软件模 块q s p i 模块,提供带有序列传输性能的串行外围接口用于控制应用的脉冲宽度调制 ( p w m ) 单元m c f 5 2 7 2 设备同时还提供许多嵌入式应用产品所共有的外围产品, 如s d r a m 控制器、d m a 、计时器、u a r t 、芯片选择、通用i o 、片上存储以及世 界级的c o l d f i r e 除错模块,所有这些都采取高效节省的方式,从而减少系统成本, 加速系统设计。m c f 5 2 7 2 扩展的外围设备组加之诱人的价格使这款高集成的 c o l d f i r e 徽处理器成为一款广泛适用于各类嵌入式应用的优秀配备,这些应用包括互 联网设备、l a n 电话技术、低端网络控制、工业控制、图像和存储等等 丑功能模块图 i 华中科技大学硕士学位论文 图1 4 开发板系统模块图 b 各部分组成 内存部分:两片1 6 2 m 位数据宽度的f l a s h ,共4 兆字= h f l a s h ,两片1 6 x 8 兆位数据宽度的s d r m 共1 6 兆s d l b m : 接口部分:两个r s 2 3 2 , 串行通信口,一个1 0 1 0 0 兆自适应快速以太网接口 c 内存映射 表1 1 内存殃射表 1 3 3 本论文的工作内容 嵌入式l i n u x 及u c l i n u x 的深入了解 嵌入式系统因其硬件系统的配置相对简化,有别于通用的操作系统。第二章 较详细的讨论了u c l i n u x 的相关功能以及在其下编程开发的相关事项。 f l a s h 设备的m m 驱动程序开发 华中科技大学硕士学位论文 m t d 是在l i n u x 2 4 上新增加的一个子系统,专门针对诸如f l a s h 这类的内存 存储设备而设计,第三章讨论了m t d 的设计思想以及实现,并给出了一个 实际的例子。 各应用程序模块的设计 第四章讨论了各应用模块的设计,流程以及框图。 嵌入式系统的引导和启动 嵌入式系统一般没有b i o s ,其引导通常利用专门的引导代码来实现,比如 b o o t l o a d e r 。第五章讨论了嵌入式系统的引导以及其后的内核初始化。 总结与改善 华中科技大学硕士学位论文 2 嵌入式l i n u x 以及u c l i n u x 的开发 l i n u x 正在嵌入式开发领域稳步发展。因为l i n u x 使用g p l ,所以任何对将 l i n u x 定制于p d a 、掌上机或者可佩带设备感兴趣的人都可以从因特网免费下载其 内核和应用程序,并开始移植或开发。许多l i n u x 改良品种迎合了嵌入式实时市 场它们包括r t l i n u x ( 实时l i n u x ) 、u c l i n u x ( 用于非枷i ,设备的l i n u x ) 、 m o n t a v i s t a l i n u x ( 用于a 脚d 、m 田s 、p p c 的l i n u x 分发版) 、a r m - l i n u x ( a r m 上的l i n u x ) 和其它l i n u x 系统 2 1 一般嵌入式l i n u x 的开发内容 嵌入式l i n u x 开发口5 1 大致涉及三个层次:引导装载程序、l m u x 内核和图形用 户界面( 或称g u d 。在本章中,我们将集中讨论涉及这三层的一些基本概念:深 入了解引导装载程序、内核和文件系统是如何交互的;并将研究可用于文件系统、 g u i 和引导装载程序的众多选项中的一部分。 2 1 1 引导装载程序随矧 引导装载程序通常是在任何硬件上执行的第一段代码。在象台式机这样的常规 系统中,通常将引导装载程序装入主引导记录( m a s t e rb o o tr e c o r d ,0 v m r ) ) 中, 或者装入l i n u x 驻留的磁盘的第一个扇区中。通常,在台式机或其它系统上,b i o s 将控制移交给引导装载程序。这就提出了一个有趣的问题:谁将引导装载程序装入 ( 在大多数情况中) 没有b i o s 的嵌入式设备上呢? 解决这个问题有两种常规技术:专用软件和微小的引导代码( t i n yb o o t c o d e ) 。 专用软件可以直接与远程系统上的闪存设备进行交互并将引导装载程序安装在 闪存的给定位置中。闪存设备是与存储设备功能类似的特殊芯片,而且它们能持久 存储信息一即,在重新引导时不会擦除其内容。 这个软件使用目标( 在嵌入式开发中,嵌入式设备通常被称为a k - ? 上的j t a g 端口,它是用于执行外部输入( 通常来自主机机器) 的指令的接口。i f l a s h - l i n u x 是 一种用于直接写闪存的流行工具。它支持为数众多的闪存芯片;它在主机机器( 通 常是d 8 6 机器一本文中我们把一台i 3 8 6 机器称为主拐) 上执行并通过j t a g 接口使用并行端口访问目标的闪存芯片。当然,这意味着目标需要有一个并行接口 使它能与主机通信。j f l a s h - l i n u x 在l i n u x 和w i n d o w s 版本中都可使用,可以在命 令行中用以下命令启动它: l l 华中科技大学硕士学位论文 j f l a s h 1 i n u x 某些种类的嵌入式设备具有微小的引导代码一根据几个字节的指令一它将 初始化一些d r a m 设置并启用目标上的一个串行( 或者u s b ,或者以太网) 端口 与主机程序通信。然后,主机程序或装入程序可以使用这个连接将引导装载程序传 送到目标上,并将它写入闪存。 在安装它并给予其控制后,这个引导装载程序执行下列各类功能: 初始化c p u 速度 初始化内存,包括启用内存库、初始化内存配置寄存器等 初始化串行端口( 如果在目标上有的话) 启用指令数据高速缓存 设置堆栈指针 设置参数区域并构造参数结构和标记( 这是重要的一步,因为内核在标识根设备、页面 大小、内存大小以及更多内容时要使用引导参数) 执行p o s t ( 加电自检) 来标识存在的设备并报告任何问题 为电源管理提供挂起恢复支持 跳转到内核的开始 带有引导装载程序、参数结构、内核和文件系统的系统典型内存布局可能如下所示 嵌入式设备上些流行的并可免费使用的l i n u x 引导装载程序有b l o b 、r e d b o o t 和 b o o t l d r 。所有这些引导装载程序都用于基于a r m 设备上的l i n u x ,并需要 j f l a s h 1 i n u x 工具用于安装。 气 华中科技大学硕士学位论文 一旦将引导装载程序安装到目标的闪存中,它就会执行我们上面提到的所有初 始化工作。然后,它准备接收来自主机的内核和文件系统。一旦装入了内核,引导 装载程序就将控制转给内核。 2 1 2 内核设置f 1 , 1 5 , 1 6 l i n u x 社区正积极地为新硬件添加功能部件和支持、在内核中修正错误并且及 时地进行常规改进。这导致大约每6 个月( 或6 个月不到) 就有一个稳定的l i n u x 的新发行版。不同的维护者维护针对特定体系结构的不同内核树和补丁。当为一个 项目选择了一个内核时,您需要评估最新发行版的稳定性如何、它是否符合项目要 求和硬件平台、从编程角度来看它的舒适程度以及其它难以确定的方面。还有一点 也非常重要:找到需要应用于基本内核的所有补丁,以便为特定的体系结构调整内 核。 内核布局 内核布局分为特定于体系结构的部分和与体系结构无关的部分。内核中特定于 体系结构的部分首先执行,设置硬件寄存器、配置内存映射、执行特定于体系结构 的初始化,然后将控制转给内核中与体系结构无关的部分。系统的其余部分在这第 二个阶段期间进行初始化。内核树下的目录a r c h 由不同的子目录组成,每个子目 录用二f 一个不同的体系结构( m 口s 、a r m 、i 3 8 6 、s p a r c 、p p c 等) 。每一个这样 的子目录都包含k e r n e l 和r a m 子目录,它们包含特定于体系结构的代码来完成象 初始化内存、设置碌q 、启用高速缓存、设置内核页面表等操作。一旦装入内核并 给予其控制,就首先调用这些函数,然后初始化系统的其余部分。 根据可用的系统资源和引导装载程序的功能,内核可以编译成v m i i n u x 、i m a g e 或z i m a g e 。v i n l i n t l x 和z i m a g e 之间的主要区别在于v m l i n u x 是实际的( 未压缩的) 可执行文件,而z l m a g e 是或多或少包含相同信息的自解压压缩文件一只是压缩 它以处理( 通常是i n t e l 强制的) 6 4 0k b 引导时间的限制。有关所有这些的权威性 解释。 内核链接和装入 一旦为目标系统编译了内核后,通过使用引导装载程序( 它已经被装入到目标 的闪存中) ,内核就被装入到目标系统的内存( 在d r a m 中或者在闲存中) 。通 过使用串行,u s b 或以太网端口,引导装载程序与主机通信以将内核传送到目标的 闪存或d r a m 中。在将内核完全装入目标后,引导装载程序将控制传递给装入内 核的地址。 内核可执行文件由许多链接在一起的对象文件组成。对象文件有许多节,如文 本、数据、i n k 数据、b a s s 等等这些对象文件都是由一个称为锤尝籍黼文件 华中科技大学硕士学位论文 链接并装入的。这个链接器脚本的功能是将输入对象文件的各节映射到输出文件中; 换句话说,它将所有输入对象文件都链接到单一的可执行文件中,将该可执行文件 的各节装入到指定地址处。v m l i n w r 1 d s 是存在于a r c h 目录中的内核链接器 脚本,它负责链按内核的各个节并将它们装入内存中特定偏移量处。 且引导装载程序将内核复制到闪存或d r a m 中,内核就被重新定位到 脚a d d r 一它通常在d r a m 中。然后,引导装载程序将控制转给这个地址, 以便内核能开始执行。 参数传递和内核引导f 1 7 l s t e x t 是内核入口点,这意味着在内核引导时将首先执行这一节下的代码。它通 常用汇编语言编写,并且通常它在a r c h 内核目录下。这个代码设置内核页 面目录、创建身份内核映射、标识体系结构和处理器以及执行分支s t a r t _ k e r n e l ( 初 始化系统的主例程) 。 s t a r tk e r n e l 调用s e t u p _ a r c h 作为执行的第一步,在其中完成特定于体系结构的 设置。这包括初始化硬件寄存器、标识根设备和系统中可用的d r a m 和闪存的数 量、指定系统中可用页面的数目、文件系统大小等等。所有这些信息都以参数形式 从引导装载程序传递到内核。 将参数从引导装载程序传递刭内核有两种方法:p a r a m e t e rs l n m t u m 和标记列 表。在这两种方法中,不赞成使用参数结构,因为它强加了限制:指定在内存中, 每- 1 - 参数必须位于p a t a ms t r u c t 中的特定偏移量处。最新的内核期望参数作为标记 列表的格式来传递,并将参数转化为已标记格式。 s e t u p _ a r c h 还需要对闪存存储库、系统寄存器和其它特定设备执行内存映射。一 旦完成了特定于体系结构的设置,控制就返回到初始化系统其余部分的s t a r tk e r n e l 函致。这些附加的初始化任务包含: 殳置陷阱 初始化中断 初始化计时器 初始化控制台 调用m = m _ i n i t ,它计算各种区域、高内存区等内的页面数量 初始化s l a b 分配器并为v f s 、缓冲区高速缓存等创建s l a b 高速曩存 建立各种文件系绕,如p r o c 、口d 2 和j f f s 2 创建k e m e l _ t h r e a d ,它执行文件系统中的血命令并显示l i g n 提示符如果在b i n 、 s h i n 或l e t c 中没有i n k 程序。那么内核将执行文件系统的b i n 中的s h e l l 2 1 3 设备驱动程序【1 8 l 1 4 华中科技大学硕士学位论文 嵌入式系统通常有许多设备用于与用户交互,象触摸屏、小键盘、滚动轮、传 感器、r a 2 3 2 接口、l c d 等等。除了这些设备外,还有许多其它专用设备,包括 闪存、u s b 、g s m 等。内核通过所有这些设备各自的设备驱动程序来控制它们,包 括g u 用户应用程序也通过访问这些驱动程序来访问设备。本节着重讨论闪存 m t d 驱动程序 闪存m t d 驱动程序 m t d 设备是象闪存芯片、小型闪存卡、记忆棒等之类的设备,它们在嵌入式设 备中的使用正在不断增长。 m t d 驱动程序是在l i n u x 下专门为嵌入式环境开发的新的一类驱动程序。相 对于常规块设备驱动程序,使用m t d 驱动程序的主要优点在于m t d 驱动程序是 专门为基于闪存的设备所设计的,所以它们通常有更好的支持、更好的管理和基于 扇区的擦除和读写操作的更好的接口。l i n u x 下的m t d 驱动程序接口被划分为两 类模块:用户模块和硬件模块。 用户模块 这些模块提供从用户空间直接使用的接口:原始字符访问、原始块访问、f t l ( 闪存转换层,f l a s h t r a n s i t i o n 【丑y e r 一用在闪存上的一种文件系统) 和y f s ( 即日 志文件系统,j o u r n a l e d f i l es y s t e m 一在闪存上直接提供文件系统而不是模拟块设 备) 。用于闪存的j f s 的当前版本是j f f s 2 。 硬件模块: 这些模块提供对内存设备的物理访问,但并不直接使用

温馨提示

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

评论

0/150

提交评论