




已阅读5页,还剩52页未读, 继续免费阅读
(控制理论与控制工程专业论文)基于嵌入式linux系统的软件平台技术的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 l i n u x 操作系统作为自由软件的代表,性能优良,是p c 服务器和桌面系统应用最广泛 的操作系统之一。由于嵌入式l i n u x 在价格上具有很大优势,其内核微小、资源丰富而且 可裁剪配置,在嵌入式系统中得到了广泛使用。近年来,显现了巨大的市场价值和广阔的 应用前景。 本文以广泛使用的s 3 c 2 4 1 0 x ( 删9 2 0 t 核) 处理器为硬件核心,系统地介绍了 s 3 c 2 4 1 0 x 处理器及系统的硬件平台结构。并在此基础上重点研究了系统软件平台的开发 技术,其中首先研究了基于l i m t x 的嵌入式软件开发环境的构建,之后详细地分析了嵌入 式l i n u x 的启动引导程序设计,主要研究内容包括移植开源软件u - b o o t 。u - b o o t 移植的工 作主要是进行了针对u b o o t 关于f l a s h 的部分代码的修改和设计。移植好的u - b o o t 可以 实现对硬件的初始化以及操作系统的加载。然后在分析l i n u x 内核结构的基础上,研究了 内核移植及裁剪和配置编译的具体方法和过程。内核修改的工作主要是对内核m t d 部分 进行修改,然后再裁减配置生成与主板匹配的l i n u x 内核,并且给出了驱动程序的编写和 移植方案。在上述工作的基础上构建了一个嵌入式系统的根文件系统。文章的最后介绍了 嵌入式g u i 的实现和基于q t e m b e d d e d 开发应用程序的方法,并且实现了一个简单的基于 q t e m b e d d e d 语音识别程序的编写。 全文详细论述了嵌入式l i n u x 移植的流程,给出了搭建嵌入式开发环境的步骤,基于 硬件平台d m 2 4 1 0 的b o o t l o a d e r ,l i n u x 内核的移植,驱动程序的编写,根文件系统的制 作,图形界面的实现方案和应用程序的编写,并且在d m 2 4 1 0 开发平台上实现了嵌入式 l i n u x 系统的集成与部署。 关键字ga r m l i n u x b o o t l o a d e r 文件系统嵌入式系统 q t e m b e d d e d内核编译 l i n u x 移植 a b s t r a c t a b s t r a c t l i n u xo p e r a t i n gs y s t e mi sar e p r e s e n t a t i v eo ft h ef l e es o f t w a r e ,w h i c hh a sh i g hp e r f o r m a n c e a n di su s e dw i d e l yi np cs e r v e r sa n de m b e d d e ds y s t e m s a si t sa d v a n t a g eo fp r i c e ,t i n yk e r n e l a n dr i c hr e s o l , l r c e , e m b e d d e dl i n u xh a sb e e nw i d e l yu s e di ne m b e d d e ds y s t e m s r e c e n t l y , i t t u r n so u tt h a tl i n u xo p e r a t i n gs y s t e mi so fl a r g ee c o n o m i cv a l u ea n dw i l lb eu s e dw i d e l yi n v a r i o u sa p p l i c a t i o n s t h i sp a p e ri n t r o d u c e dt h e $ 3 c 2 4 10 xc p ua n dt h es y s t e ms t r u c t u r e b a s e do nt h i s ,i tm a i n l y r e s e a r c h e dt h ed e v e l o p m e n to fs y s t c ms o f t w a r e f i r s t l yt h ep a p e rd e s c r i b e dh o wt oe s t a b l i s ht h e c r o s sc o m p i l i n ge n v i r o n m e n t , a f t e rt h a ta n a l y z e dt h ew o r k i n gp r o c e s so ft h ee m b e d d e d b o o t l o a d e r t h eb o o t l o a d e ri m p l e m e n t a t i o ni sd o n eb yp o r t i n gu - b o o t t h ep o r t e du - b o o tc a n b ea c h i e v e do nt h ei n i t i a lh a r d w a r ea n dt h eo p e r a t i n gs y s t e ml o a d e d t h e nb a s e do nt h ea n a l y s e s o f t h el i n u xk e r n e ls t r u c t u r et h ep a p e rd i s c u s s e dt h em e t h o d so f k e r n e lp o r t i n ga n dc o n f i g u r a t i o n t h ec o d eo ft h el i n u xk e r n e li sm o d i f i e dt of i tt h eh a r d w a r eo fe m b e d d e ds y s t e m ,a n dt h ek e r n e l i sc o n f i g u r e dt ob u i l dt h es y s t e m sk e r n e l t h e nt h ep a p e rp r e s e n t e dt h et h e o r yo fl i n u xd e v i c e d r i v e r s i nt h ea b o v e ,ar o o tf i l es y s t e mf o rt h ee m b e d d e ds y s t e mi sb u i l t f i n a l l y , t h ep a p e ra n a l y z e d t h et y p i c a le m b e d d e dg u i - q t e m b e d d e d ,i n t r o d u c e dt h em e t h o d so f a p p l i c a t i o nd e v e l o p m e n t t h i sp a p e rs p e c i f i e st h ef l o wo fp o r t i n ge m b e d d e dl i n u x , p r e s e n t st h es c h e m eo fb u i l d i n g d e v e l o p m e n te n v i r o n m e n t , i m p l e m e n t i n gb o o t i o a d e r , p o r t i n gl i n u xk e r n e l , d e s i g no fd e v i c e d r i v e r , i m p l e m e n t i n g t h e r o o tf i l e s y s t e m ,t h et y p i c a li m p l e m e n t a t i o n e m b e d d e d g u i q t e m b e d d e da n dd e s i g n e dag u ia p p l i c a t i o n k e y w o r d s : a m :l l i n u xb o o t l o a d e r k e r n e lc o m p i l e sf i l es y s t e m l i n u xp o r t i n g q t e m b e d d e d e m b e d d e ds y s t e m 曲阜师范大学博士硕士学位论文原创性说明 ( 在口划“ ) 本人郑重声明:此处所提交的博士口硕士口论文基于嵌入式l i n u x 系统的软件平台技术的研究,是本人在导师指导下,在曲阜师范大学攻读 博士口硕士口学位期间独立进行研究工作所取得的成果。论文中除注明部 分外不包含他人已经发表或撰写的研究成果。对本文的研究工作做出重要贡 献的个人和集体,均已在文中已明确的方式注明。本声明的法律结果将完全 由本人承担。 作者签名: 胃跌交 日期:沙喝j :节 曲阜师范大学博士硕士学位论文使用授权书 ( 在口划“”) 基于嵌入式l i n u x 系统的软件平台技术的研究系本人在曲阜师范大学攻 读博士口硕士口学位期间,在导师指导下完成的博士口硕士口学位论文。 本论文的研究成果归曲阜师范大学所有,本论文的研究内容不得以其他单位 的名义发表。本人完全了解曲阜师范大学关于保存、使用学位论文的规定, 同意学校保留并向有关部门送交论文的复印件和电子版本,允许论文被查阅 和借阅。本人授权曲阜师范大学,可以采用影印或其他复制手段保存论文, 可以公开发表论文的全部或部分内容。 作者签名:函装 导师签名。 式也坞 日期:加。占f 哆 醐。班7 第l 章绪论 第1 章绪论 嵌入式系统( e m b e d d e ds y s t e m ) 是计算机技术、通信技术、半导体技术、微电子技 术、语音、图象数据传输技术,甚至传感器等先进技术和具体应用对象相结合后的更新 换代产品。因此是技术密集、投资强度大、高度分散、不断创新的知识密集型系统,反 映了当代最新技术的先进水平。嵌入式系统是以应用为中心,软硬件可裁减的,适用于 对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。具有软件代 码小、高度自动化、响应速度快等特点,特别适合于要求实时和多任务的体系。嵌入式 系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成,它 是可独立工作的“器件”。嵌入式系统的架构可以分为四个组成部分:处理器、存储器、 输入输出( i 幻) 和软件。嵌入式系统的组成如图1 1 所示。 输入 1 1 课题的研究背景 图1 1 嵌入式系统组成 输出 随着嵌入式技术的蓬勃发展,嵌入式设备同人们日常生活的联系变得越来越密切。 这些嵌入式设备多以信息终端的形式出现,集计算、通信、传感功能于一身,能方便地 与各种设备( 包括日常用品) 结合在一起,满足了用户对于嵌入式设备更便捷、自然使 用的需求。 由于无线网络和通讯技术的快速发展,人们对智能移动便携式设备的需求增强。嵌 入式系统己成为当前i t 产业的焦点之一。由于嵌入式系统具有功耗低、体积小、性能可 第1 章绪论 靠性高及面向行业应用的突出特征,目前已经广泛地渗透到科学研究、工程设计、军事 技术、商业文化艺术、娱乐业以及人们的日常生活等方方面面。嵌入式系统无处不在, 从家庭的洗衣机,电冰箱,自行车,小汽车,到办公室里的远程会议系统等,这些都属 于嵌入式的产品。目前嵌入式技术已成为一个研究与应用的热点。 1 1 1a r m 处理器简介 a r m ( a d v a n e e dr i s cm a c h i n e s ) ,即可以认为是一个公司的名字,也可以认为是对一 类微处理器的通称,还可以认为是一种技术的名字。a r m 处理器是一种低功耗高性能的 3 2 位r i s c 处理器,a r m 处理器是一个综合体。a r m 公司自身并不制造微处理器,而是 一日a r m 的合作伙伴来制造,作为s o c ( s y s t e mo nc h i p ) 的典型应用。目前,基于a r m 处 理器以其高速度、低功耗等诸多优异的性能而得到非常广泛的应用【l 】。 目前,采用a r m 技术知识产权( 口) 核的微处理器,即我们通常所说的a r m 微处理 器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市 场。基于a r m 技术的微处理器约占据了3 2 位r i s c 微处理器7 5 以上的市场份额,a r m 技术正在逐步渗入到我们生活的各个方面【2 】。 1 1 2 嵌入式操作系统 早期的嵌入式应用相对简单,一般只是为了实现某些特定功能以满足特定场合的需 要,如应用于专业性极强的各类工业控制、飞机及导弹等武器装备中等。在这些系统中, 运行的软件就是一个简单的控制循环,因此一般不使用操作系统,但是随着嵌入式系统 的应用领域日益扩大,其功能越来越复杂,完全由程序员来驾驭整个系统显然是能力不 够,而且每增加一项功能就要重新设计系统,导致了极大的资源浪费和重复劳动。同时 随着计算机技术和集成电路的发展,硬件所提供的条件也越来越好,因此选择嵌入式操 作系统也成为一种必然的趋势。 嵌入式操作系统是嵌入式系统的操作系统。它们通常被设计的非常紧凑有效,抛弃 了运行在它们之上的特定的应用程序所不需要的各种功能。嵌入式操作系统多数也是实 时操作系统。作为嵌入式系统( 包括硬、软件系统) 极为重要的组成部分的嵌入式操作 系统,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图 形界面、标准化浏览器等。嵌入式操作系统具有通用操作系统的基本特点,如能够有效 管理越来越复杂的系统资源:能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植 和维护中解脱出来:能够提供库函数、驱动程序、工具集以及应用程序。与通用操作系 统相比较,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应 用的专用性等方面具有较为突出的特点。嵌入式操作系统是嵌入式系统重要的运行环境 2 第l 章绪论 和开发平台,它是否高效、稳定、安全等将直接关系到嵌入式系统的成败,己成为嵌入 式系统设计和开发的重点。 嵌入式操作系统可以分为两类,一类是面向控制、通信等领域的实时操作系统,如 w i n d r i v e r 公司的v x w o r k s 、i s i 的p s o s 、q n x 系统软件公司的q n x 、a t i 的n u c l e u s 等: 另一类是面向消费电子产品的非实时操作系统,这类产品包括个人数字助理( i d a ) 、移 动电话、机顶盒、电子书、w e b p h o n e 等,主要的操作系统有,a c l i n u x ,e m b e d d e dl i n u x , p a k n o s ,w i n d o w s c e ,e c o s ,s y m b i a n ,等驯 ( 1 ) v x w o r k s v x w o r k s 操作系统是美国w i n d p d v e r 公司于1 9 8 3 年设计开发的一种嵌入式实时操作 系统( i 淝s ) ,是t o r n a d o 嵌入式开发环境的关键组成部分。良好的持续发展能力、高 性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域逐渐占据一席之地。 v x w o r k s 具有可裁剪微内核结构、高效的任务管理、灵活的任务间通讯、微秒级的 中断处理、支持p o s i x l 0 0 3 1 b 实时扩展标准、支持多种物理介质及标准的、完整的t c p i p 网络协议等。然而其价格昂贵。由于操作系统本身以及开发环境都是专有的,价格一般 都比较高,通常需花费1 0 万元人民币以上才能建起一个可用的开发环境,对每一个应用 一般还要另外收取版税。一般不提供源代码,只提供二进制代码。由于它们都是专用操 作系统,需要专门的技术人员掌握开发技术和维护,所以软件的开发和维护成本都非常 高,并且支持的硬件数量有限【4 】。 ( 2 ) c o s h c o s h 是一种免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统。 c o s l i 是专门为计算机的嵌入式应用设计的,绝大部分代码是用c 语言编写的,c p u 硬件相关部分是用汇编语言编写的,总量约2 0 0 行的汇编语言部分被压缩到最低限度, 为的是便于移植到任何一种其它的c p u 上。用户只要有标准的a n s i 的c 交叉编译器, 有汇编器、连接器等软件工具,就可以将a c o s i i 嵌入到开发的产品中。c o s i i 具有执行 效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2 k b 。 c o s i i 已经移植到了几乎所有知名的c p u 上。c o s h 目标是实现一个基于优先级调度 的抢占式的实时内核并在这个内核之上提供最基本的系统服务,如信号量、邮箱、消 息队列、内存管理、中断管理等。 严格地说c o s l l 只是一个实时操作系统内核,它仅仅包含了任务调度、任务管理、 时间管理、内存管理和任务间的通信和同步等基本功能,没有提供输入输出管理、文件 系统、网络等额外的服务。但由于z c o s i i 良好的可扩展性和源码开放,这些非必须的功 能完全可以由用户自己根据需要分别实现。 ( 3 ) w i n d o w sc e w m d o w sc e 与w i n d o w s 系列有较好的兼容性,无疑是w i n d o w sc e 推广的一大优势。 其中w i n c f a 0 是一种针对小容量、移动式、智能化、3 2 位、模块化的设备的实时嵌入 第1 章绪论 式操作系统。为建立针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰 富的操作系统平台。它能在多种处理器体系结构上运行,并且通常适用于那些对内存占 用空间具有一定限制的设备。它是从整体上为有限资源的平台设计的多线程、完整优先 权、多任务的操作系统。它的模块化设计允许它对从掌上电脑到专用的工业控制器的用 户电子设备进行定制。操作系统的基本内核需要至少2 0 0 k b 的r o m 。由于嵌入式产品 的体积、成本等方面有较严格的要求,所以处理器部分占用空间应尽可能的小。系统的 可用内存和外存数量也要受限制,而嵌入式操作系统就运行在有限的内存( 一般在r o m 或快闪存储器) 中,因此就对操作系统的规模、效率等提出了较高的要求。从技术角度 上讲,w i n d o w sc e 作为嵌入式操作系统有很多的缺陷:没有开放源代码,使应用开发 人员很难实现产品的定制;在效率、功耗方面的表现并不出色,而且和w m d o w s 一样占 用过的系统内存,运用程序庞大;版权许可费也是厂商不得不考虑的因素。 ( 4 ) e m b e d d e dl i n u x 嵌入式l i n u x 是嵌入式操作系统的一个新成员,其最大的特点是源代码公开并且遵 循g p l 协议。由于其源代码公开,人们可以任意修改,以满足自己的应用,并且查错也 很容易。遵从g p l ,无须为每例应用交纳许可证费,有大量的应用软件可用,其中大部 分都遵从g p l ,是开放源代码和免费的,可以稍加修改后应用于用户自己的系统有大 量的免费的优秀的开发工具,且都遵从g p l ,是开放源代码的。有庞大的开发人员群体。 无需专门的人才,只要懂u n i x l i n u x 和c 语言即可。随着l i n u x 在中国的普及,这类人 才越来越多,所以软件的开发和维护成本很低。优秀的网络功能是l i n u x 系统在i n t e r a c t 时代尤其重要的特点。稳定是l i n u x 本身具备的一个很大优点。内核精悍,运行所 需资源少,十分适合嵌入式应用 嵌入式l i n u x 支持的硬件数量庞大。嵌入式l i n u x 和普通l i n u x 并无本质区别,p c 上用到的硬件嵌入式l i n u x 几乎都支持,而且各种硬件的驱动程序源代码都可以得到, 为用户编写自己专有硬件的驱动程序带来很大方便。 在嵌入式系统上运行l i n u x 的一个缺点是l i n u x 体系提供实时性能需要添加实时软件 模块。而这些模块运行的内核空间正是操作系统实现调度策略、硬件中断异常和执行程 序的部分。由于这些实时软件模块是在内核空间运行的,因此代码错误可能会破坏操作 系统从而影响整个系统的可靠性,这对于实时应用将是一个非常严重的弱点【5 j 。 嵌入式l i n u x 系统所具有的优势: 1 广泛的硬件支持 l i n u x 能够支持x 8 6 、a r m 、m i p s 、a l p h a 、p o w e r p c 等多种体系结构,目前已 经成功移植到数十种硬件平台,几乎能够运行在所有流行的c p u 上。l i n u x 有着异常丰 富的驱动程序资源,支持各种主流硬件设备和最新硬件技术,甚至可以在没有存储管理 单元( m m u ) 的处理器上运行,这些都进一步促进了l i n u x 在嵌入式系统中的应用 4 第l 章绪论 2 内核高效稳定 l i n u x 内核的高效和稳定已经在各个领域内得到了大量事实的验证,l i n u x 的内核设 计非常精巧,分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部 分。其独特的模块机制可以根据用户的需要实时地将某些模块插入到内核或从内核中移 走。这些特性使得l i n u x 系统内核可以裁剪得非常小巧,很适合于嵌入式系统的需要网。 3 开放源码,软件丰富 l i n u x 是开放源代码的自由操作系统,它为用户提供了最大限度的自由度,由于嵌 入式系统千差万别,往往需要针对具体的应用进行修改和优化,因而获得源代码就变得 至关重要了。l i n u x 的软件资源十分丰富,每一种通用程序在l i n u x 上几乎都可以找到, 并且数量还在不断增加。在l i n u x 上开发嵌入式应用软件一般不用从头做起,而是可以 选择一个类似的自由软件作为原型,在其上进行二次开发。 4 优秀的开发工具 开发嵌入式系统的关键是需要有一套完善的开发和调试工具。传统的嵌入式开发调 试工具是在线仿真器( i n c i r c u i te m u l a t o r ,i c e ) ,它通过取代目标板的微处理器,给目 标程序提供一个完整的仿真环境,从而使开发者能够非常清楚地了解到程序在目标板上 的工作状态,便于监视和调试程序。在线仿真器的价格非常昂贵,而且只适合做非常底 层的调试,如果使用的是嵌入式l i n u x ,一旦软硬件能够支持正常的串口功能时,即使 不用在线仿真器也可以很好地进行开发和调试工作,从而节省了一笔不小的开发费用。 嵌入式l i n u x 为开发者提供了一套完整的工具链( t o o l c h a i n ) ,它利用g n u 的g e e 做编 译器,用g d b 、k g d b 、x g d b 做调试工具,能够很方便地实现从操作系统到应用软件各个 级别的调试。 5 完善的网络通信和文件管理机制 l i n u x 至诞生之日起就与i n t e m e t 密不可分,支持所有标准的i n t o m e t 网络协议,并 且很容易移植到嵌入式系统当中。此外,l i n u x 还支持e x t 2 、f a t l 6 、f a t 3 2 、r o m f s 等文件 系统,这些都为开发嵌入式系统应用打下了很好的基础。 嵌入式l i n u x 系统所面临的挑战:目前,嵌入式l i n u x 系统的研发热潮正在蓬勃兴 起,并且占据了很大的市场份额,除了一些传统的l i n u x 公司( 如r c d i - i a t 、m o n t a v i s t a 等) 正在从事嵌入式l i n u x 的开发和应用之外,i b m 、i n t e l 、m o t o r o l a 等著名企业也开 始进行嵌入式l i n u x 的研究。虽然前景一片灿烂,但就目前而言,嵌入式l i n u x 的研究 成果与市场的真正要求仍有一段差距,要开发出真正成熟的嵌入式l i n u x 系统,还需要 从以下几个方面做出努力。 1 提高系统实时性 l i n u x 虽然已经被成功地应用到了p d a 、移动电话、车载电视、机顶盒、网络微波炉 等各种嵌入式设备上但在医疗、航空、交通、工业控制等对实时性要求非常严格的场 合中还无法直接应用,原因在于现有的l i n u x 是一个通用的操作系统,虽然它也采用了许 第1 章绪论 多技术来加快系统的运行和响应速度,并且符合p o s i x l 0 0 3 1 b 标准,但从本质上来说并 不是一个嵌入式实时操作系统。l i n u x 的内核调度策略基本上是沿用u n i x 系统的,将它 直接应用于嵌入式实时环境会有许多缺陷,如在运行内核线程时中断被关闭,分时调度 策略存在时间上的不确定性,以及缺乏高精度的计时器等等。正因如此,利用l i n u x 作为 底层操作系统,在其上进行实时化改造,从而构建出一个具有实时处理能力的嵌入式系 统,是现在日益流行的解决方梨7 1 。 2 改善内核结构 l i n u x 内核采用的是整体式结构( m o n o l i t h i c ) ,整个内核是一个单独的、非常大的 程序。这样虽然能够使系统的各个部分直接沟通,有效地缩短任务之间的切换时间,提 高系统响应速度,但与嵌入式系统存储容量小、资源有限的特点不相符合。嵌入式系统 经常采用的是另一种称为微内核( m i c r o k c m e l ) 的体系结构,即内核本身只提供一些最 基本的操作系统功能,如任务调度、内存管理、中断处理等,而类似于文件系统和网络 协议等附加功能则运行在用户空间中,并且可以根据实际需要进行取舍。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 内核部分改造成m i c r o k e m e l ,使l i n u x 在具 有很高性能的同时,又能满足嵌入式系统体积小的要求。 3 完善集成开发平台 引入嵌入式l i n u x 系统集成开发平台,是嵌入式l i n u x 进- - 步发展和应用的内在要求。 传统上的嵌入式系统都是面向具体应用场合的,软件和硬件之间必须紧密配合,但随着 嵌入式系统规模的不断扩大和应用领域的不断扩展,嵌入式操作系统的出现就成了一种 必然,因为只有这样才能促成嵌入式系统朝层次化和模块化的方向发展。很显然,嵌入 式集成开发平台也是符合上述发展趋势的。一个优秀的嵌入式集成开发环境能够提供比 较完备的仿真功能,可以实现嵌入式应用软件和嵌入式硬件的同步开发,从而摆脱了“嵌 入式应用软件的开发依赖于嵌入式硬件的开发,并且以嵌入式硬件的开发为前提”的不 利局面。一个完整的嵌入式集成开发平台通常包括编译器、连接器、调试器、跟踪器、 优化器和集成用户界面。目前l i n a x 在基于图形界面的特定系统定制平台的研究上,与 w i n d o w sc e 等商业嵌入式操作系统相比还有很大差距,整体集成开发环境有待提高和完 善【8 】 1 2 课题的研究目标和意义 本课题的目标是设计开发基于a r m 微处理器和嵌入式l i n u x 操作系统的嵌入式开发 平台。以在产业界广为使用的$ 3 c 2 4 1 0 x ( a r m 9 2 0 t 核) 处理器为硬件核心,在系统的硬 件平台结构的基础上重点研究了系统软件平台的开发。该系列平台将广泛应用于各种嵌 入式智能系统,例如机器人、智能m p 4 、智能玩具及智能玩具机器人、车载应用、家电 第1 章绪论 语音控制、智能移动终端等产品。 本系统采用s a m s u n g 推出的1 6 3 2 位r i s c 处理器$ 3 c 2 4 i o x ,它是专门为p d a 、 i n t e m e t 设备和手持设备等开发的高性能、低功耗的微处理器。处理器内部集成了绝大多 数的外围设备,这样降低了整个系统的成本。操作系统使用免费的、开放源码的嵌入式 l i n u x 操作系统,图形界面采用q t e m b e d d e d 。 1 b o o t l o a d c r 的移植和编写 p c 机加电后的启动引导过程是由b i o s 程序和存放在硬盘m b r 中的引导程序完成 的,但在嵌入式系统中,出于经济价格方面的考虑,通常并没有像b i o s 那样的固件程 序。因此需要由用户编写程序来完成p c 机的b i o s 程序和引导程序所完成的功能,在嵌 入式系统中称之为b o o t l o a d e r 程序。主要功能是在嵌入式操作系统及用户应用程序运行 之前,完成系统的初始化,并加载操作系统及应用程序。 2 嵌入式l i n u x 的移植 如果选用的平台l i n u x 不支持,还需要把l i n u x 内核中与硬件平台相关的部分改写, 使之支持所选用的平台。在l i n u x 2 6 1 0 版本的内核之后,s a m s u n gs 3 c 2 4 1 0 x 已经成为 l i n u x 的一个标准支持平台,无需任何p a t c h 就可以在$ 3 c 2 4 1 0 x 的目标板上运行得很好。 同时由于嵌入式系统资源非常有限,因此需要根据实际情况对内核进行配置裁减,使内 核非常精简。 3 驱动程序的开发 嵌入式应用日益广泛化、多样化,在各类电子类产品、手持设备中都有应用,如彩 电、p d a 、手机产品等等。不同的应用就决定了对处理器的性能、存储器、不同硬件的 使用、应用规模和功能的要求各不相同,这样就决定了具体产品中所选用的周边硬件设 备及具体的硬件电路的配置各不相同。因此设备驱动程序的开发就是非常重要的工作 4 l i n u x 根文件系统的制作 l i n u x 的根文件系统具有非常独特的特点,就其基本的组成来说,l i n u x 的根文件系 统应该包括支持l i n u x 系统正常运行的基本内容,包含着系统使用的软件和库,以及所 有用来为用户提供支持架构和用户使用的应用软件。 5 图形系统的移植及q t e m b e d d e d 应用程序的开发 现代的操作系统如果没有一个友好的界面是没有说服力的。p c 机的l i n u x 系统使用 了传统的x w m d o w 系统的模式c l i e 州s e r v e r 结构。但x w m d o w 对于嵌入式产品来 说显得过于庞大。因此,需要开发适用于嵌入式l i n u x 上的图形界面系统,并将图形界 面加入到文件系统中。 主要研究的内容包括:本方案主要做嵌入式平台的系统软件开发,根据硬件电路进 行b o o t l o a d e r 的移植和编写,嵌入式l i n u x 内核的移植,驱动程序的开发,l i n u x 根文 件系统的制作,嵌入式图形系统的移植,图形应用程序的编写,系统的测试,在调试成 功后下载到硬件电路板上。 7 第1 章绪论 1 3 论文的内容安排及相关工作介绍 本文是作者在硕士学习期间,嵌入式智能系统平台软件研究开发工作的总结。本文 深入研究了a r m 体系结构、开发流程和开发方式。全文详细论述了嵌入式l i n u x 系统 移植的流程,搭建了嵌入式开发环境,基于硬件平台d m 2 4 1 0 的b o o t l o a d e r ,l i n u x 内 核的移植,驱动程序的编写,根文件系统的制作,图形界面的实现方案和应用程序的编 口 1 o 整个文章可分为三大部分: 第一部分介绍了论文的研究背景、研究目标和意义以及主要研究内容,这一部分包 括第一章。 第二部分研究了嵌入式开发的硬件平台,这一部分包括第二章,主要分析了微处理 器s 3 c 2 4 1 0 x 的特点、硬件系统的整体结构及系统存储空间的分配。 第三部分研究了嵌入式软件平台的开发与设计,这一部分包含第三章,第四章,第 五章。其中各章所包括的内容如下: 第三章主要研究了嵌入式软件开发环境的构建过程。详细给出了g n u 交叉开发工具 链的安装过程和嵌入式系统的交叉调试方法,并且搭建了嵌入式系统软件开发环境。 第四章主要详细的分析了嵌入式l i n u x 的启动引导过程,研究了b o o t l o a d e r 的相关 概念,并给出了u - b o o t 移植的方法,在d m 2 4 l o 开发板上成功的实现了u - b o o t 的移植。 第五章本章详细描述了嵌入式l i n u x 系统的构建,具体做了以下工作: 1 深入的研究了l i n u x 内核的工作原理以及移植及配置编译的方法步骤: 2 在研究l i n u x 设备驱动设计方法的基础上,实现了本文硬件平台在l i n u x 系统中 的驱动程序设计; 3 研究了l i n u x 根文件系统的实现和裁剪,制作出了一个基本的l i n u x 根文件系统。 4 研究了q t e m b e d d e a 的应用程序开发,并且编写了智能语音系统的机器人应用程 序,实现了嵌入式系统的图形化。 并且在d m 2 4 1 0 开发平台上实现了嵌入式l i n u x 系统的集成与部署。 最后是本文的一个简短总结和对将来的工作展望。 第2 章嵌入式系统硬件平台 第2 章嵌入式系统硬件平台 本课题选用的实验平台为浙江大学嵌入式系统研究中心所出的d m 2 4 1 0 = - - - a r m 9 嵌入式开发平台。该嵌入式开发平台采用s a m s u n g 公司的基于a r m 9 2 0 t 内核的 $ 3 c 2 4 1 0 x 微处理器,是专门为p d a 、i i 他m e t 设备和手持设备等开发的高性能、低功 耗的微处理器。本章主要分析$ 3 c 2 4 1 0 x 微处理器特点、系统的整体结构及特点,并简 单介绍了系统的存储空间分配情况。 2 1 $ 3 c 2 4 10 x 微处理器介绍 s a m s u n g 公司推出的1 6 3 2 位r i s c 处理器$ 3 c 2 4 1 0 x ,为手持设备和一般类型应用提 供了低价格、低功耗、高性能小型微控制器的解决方案。为了降低整个系统的成本, $ 3 c 2 4 1 0 x 提供了以下丰富的内部设备:分开的1 6 k b 的指令c a c h e 和1 6 k b 数据c a c h e , h 岱町虚拟存储器管理,l c d 控制器( 支持s 1 n & ,n 丌) ,支持n a n df l a s h 系统引导,系 统管理器( 片选逻辑和s d r a m 控制器) ,3 通道u a r t ,4 通道d m a ,4 通道p w m 定时 器,i o 端口,r t c ,8 通道l o 位a d c 和触摸屏接口,c b u s 接口,i i c - b u s 接口,u s b 主机,u s b 设备,s d 主卡& m m c 卡接口,2 通道的s p i 以及内部p i 工时钟倍频器【9 】。 s 3 c 2 4 1 0 6 瓜m 处理器支持大小端模式存储字数据,其寻址空间可达1 g b ,每个b a n k 为1 2 8 m b ,对于外部i o 设备的数据宽度,可以是8 1 6 3 2 位,所有的存储器b a n k 都具 有可编程的操作周期,而且支持各种i 的m 引导方式。$ 3 c 2 4 1 0 x 的内部结构如图2 1 。 s 3 c 2 4 1 0 x 的显著特性是它的c p u 核心,是一个由a d v a n c e dr i s cm a c h i n e s ( a r m ) 有限公司设计的1 6 3 2 位a r m 9 2 0 tr i s c 处理器。a r m 9 2 0 t 实现了舢,a m b ab u s 和h a r v a r d 高速缓冲体系结构。这一结构具有独立的1 6 k b 指令c a c h e 和1 6 k b 数据c a c h e , 每个都是由8 字长的行( 1 i n e ) 构成。$ 3 c 2 4 1 0 x 采用了舢9 2 0 t 内核,0 1 8 m 工艺的 c m o s 标准宏单元和存储器单元。它的低功耗、精简和出色的全静态设计特别适用于对 成本和功耗敏感的应用。同样它还采用了一种叫做a d v a n c e dm i c r o e o n t r o l l e rb u s 觚h i t c l c t u r e ( a 略a ) 新型总线结构【1 0 。 s 3 c 2 4 1 0 x 中集成了以下片上功能: 1 8 v 2 0 v 内核供电,3 3 v 存储器供电,3 3 v 外部i o 供电。 具备1 6 k b 的i - c a c h e 和1 6 k b 的d c a c h e m m u 。 外部存储控制器( s d r a m 控制和片选逻辑) 。 l c d 控制器( 最大支持4 k 色s t n 和2 5 6 k 色t f t ) 提供l 通道l c d 专用d m a 。 4 通道d m a 并有外部请求引脚。 3 通道u a r t ( i r d a l 0 。1 6 字节t xf i f o ,和1 6 字节r xf i f o ) 2 通道s p i 。 9 第2 章嵌入式系统硬件平台 l 通道多主i i c - b u s 1 通道i i s b u s 控制器。 兼容s d 主接口协议1 0 版和m m c 卡协议2 i l 兼容版。 2 端口u s b 主杌l 端口u s b 设备( 1 1 版) 。 4 通道p w m 定时器和l 通道内部定时器。 看门狗定时器。 1 1 7 个通用i o 口和2 4 通道外部中断源。 功耗控制模式:具有普通,慢速,空闲和掉电模式。 8 通道1 0 比特a d c 和触摸屏接口。 具有日历功能的r t c 。 具有p l l 片上时钟发生器。 图2 1s 3 c 2 4 1 0 x 内部结构框图 通过提供一系列完整的系统外围设备,$ 3 c 2 4 1 0 x 大大减少了整个系统的成本,消除 了为系统配置额外器件的需要。因此开发平台选用s 3 c 2 4 1 0 x 微处理器进行二次开发。 i o 第2 章嵌入式系统硬件平台 2 2 系统整体结构 本课题的硬件平台由核心板和扩展板组成,核心板上使用了s a m s u n g 公司的 s 3 c 2 4 l o x 处理器,并集成了6 4 m b 的s d r a m ,2 m b n o r f l a s h 存储设备以及核心电压 模块、实时时钟、系统跳线、系统时钟、核心板接口等;扩展板上提供了丰富的外设接 口:c s 8 9 0 0 以太网卡接口、2 个与p c 机通信的i7 a r t 、1 个l c d 接口、触摸屏接口电路、 键盘控制接1 :3 、6 4 m b 的n a n d f l a s h 存储芯片,提供了u s b 主从接口等等【l l 】。核心板 和扩展板构成了一个完整的应用系统,它能够装载和运行嵌入式l i n u x 操作系统。系统的 硬件平台体系结构如图2 2 所示。 图2 2 硬件平台结构框图 用户可以在这个系统平台上进行自主软件开发,并对s 3 c 2 4 1 0 x 进行测试和评估, 也可以在保持核心板不变的情况下,针对具体的应用通过对扩展板的更改来定制自己的 应用系统平台。 基于s 3 c 2 4 l o x 处理器扩展了丰富的接口,系统具有如下特性: 系统时钟源直接采用外部晶振,内部p l l 电路,c p u 操作时钟可稳定地工作在 2 0 0 忸z 。 b o o tr o m :支持两种启动方式。 第2 章嵌入式系统硬件平台 i c 卡接口:用于各种智能卡的读写。 l c d 接口:提供5 0 针的t f t l c d 触摸屏接口。 m g 接口:提供用户在线仿真时仿真器的接口。 u s b 主设备接口:提供4 个设备接口,用于连接键盘、鼠标、u 盘、移动硬盘、摄 像头等。 u s b 从设备接口:一个u s b 从设备接口用于和主机连接通信。 音频接口:c p u 内置i i s 总线,通过扩展音频芯片u d a l 3 4 i t s 实现对音频的录放功 能。 2 3 系统存储空间分配 嵌入式系统与通用p c 机不同,一般没有硬盘这样的存储设备而是使用f l a s h 闪存芯 片、小型闪存卡等专为嵌入式系统设计的存储装置。f l a s h 是目前嵌入式系统中广泛采用 的主流存储器,它的主要特点是按整体厂扇区擦除和按字节编程,具有低功耗、高密度、 小体积等优点。目前,f l a s h 分为n o r , n a n d 两种类型。 n o r 型闪存可以直接读取芯片内储存的数据,因而速度比较快,但是价格较高。n o r 型芯片,地址线与数据线分开,所以n o r 型芯片可以像s r a m - - 样连在数据线上,对n o r 芯片可以“字”为基本单位操作,因此传输效率很高,应用程序可以直接在f l a s h p 勺运行, 不必再把代码读到系统r a m 中运行。它与s r a m 的最大不同在于写操作需要经过擦除 和写入两个过程【1 引。 n a n d 型闪存芯片共用地址线与数据线,内部数据以块为单位进行存储,直接将 n a n d 芯片作启动芯片比较难。n a n d 闪存是连续存储介质,适合放大文件。擦除n o r 器件时是以6 4 - 1 2 8 k b 的块进行的,执行一个写入擦除操作的时间为5 s ;擦除n a n d 器 件是以8 - 3 2 k b 的块进行的,执行相同的操作最多只需要4 m s 。n a n df l a s h 的单元尺寸 几乎是n o r 器件的一半,由于生
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全、文明施工方案
- 河南省漯河市郾城区2022-2023学年九年级上学期期中化学试题(含答案)
- 高电压试验基础知识培训课件
- 9Z-11E-Octadecadienoyl-CoA-9Z-11E-Octadecadienoyl-coenzyme-A-生命科学试剂-MCE
- 保险金融资格考试科目及答案
- 保险代理人分级考试题及答案
- 高桥村消防知识培训课件
- 高校无人机培训课件
- 高志谦课件教学课件
- 高尔夫球基础知识培训课件
- 2025年部编版新教材语文八年级上册教学计划(含进度表)
- 高中生物开学第一课课件 高一生物(人教版)必修1
- 2024年船舶分段制造与装配分包劳务合同
- 安徽课件完整版本
- 医疗质量管理工具课件
- 急性上呼吸道感染病人的护理
- 小学教师量化考核表
- 房建监理平行检查记录表格模板(参考版)
- 计算机操作系统(第四版)-汤小丹-课后习题答案
- 12生物分子网络ppt课件
- 手术室护士长工作手册-精品完整版
评论
0/150
提交评论