(信号与信息处理专业论文)基于uclinux的针对arm7核的嵌入式系统研究.pdf_第1页
(信号与信息处理专业论文)基于uclinux的针对arm7核的嵌入式系统研究.pdf_第2页
(信号与信息处理专业论文)基于uclinux的针对arm7核的嵌入式系统研究.pdf_第3页
(信号与信息处理专业论文)基于uclinux的针对arm7核的嵌入式系统研究.pdf_第4页
(信号与信息处理专业论文)基于uclinux的针对arm7核的嵌入式系统研究.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(信号与信息处理专业论文)基于uclinux的针对arm7核的嵌入式系统研究.pdf.pdf 免费下载

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

文档简介

基于u c i ir l u x 的针对a r m 7 核的嵌入式系统研究 摘要 嵌入式系统就是以应用为中心,以计算机技术为基础,软硬件可 裁减,适应应用系统对功能,可靠性,成本,体积,功耗严格要求 的专用计算机系统。嵌入式系统由嵌入式处理器,相关支撑硬件和 软件组成。嵌入式微处理器构成了嵌入式系统的硬件核心:软件是 实现应用目标的关键,随着需求变得越来越复杂,操作系统也成为 了嵌入式系统中的一个基本部件。 a r m 体系的微处理器由于其突出的性能特点,近年来己经在嵌入 式应用领域确立了市场和技术的领先地位;h i n u x 作为嵌入式操作系 统的崛起成为了i t 界的一个新热点,它所倡导的f r e e o p e n 的思 想打破了计算机软件业的传统游戏规则,并以其独有的魅力,迅速 成为了这一领域中的主角。 本文主要介绍了作者对l i n u x 在a r m 构架微处理上应用的尝试 性探索: 1 对流行的多种嵌入式操作系统的各自特点进行了分析比较, 充分说明了l i n u x 在嵌入式领域的与生俱来的优势。 2 简单介绍了a r m 7 核的结构以及开发过程常用的软件工具。 3 由底层到上层,分别对系统引导程序b l o b 和u c l i n u x 进行了 框架性的分析。 4 在对硬件逐步了解,对b l o b 以及l i n u x 分析的基础上,针对 北京亿旗创新公司推出的两款a r m 实验箱,作了l i n u x 系统移 植实现,并补充了触摸屏,u s b 等的驱动,搭建起了完整的嵌 入式系统。 关键词嵌入式系统嵌入式操作系统u c l i n u xu s ba r m 触摸屏 基于u c i i n u x 的针对a r m 7 核的嵌入式系统研究 e m b e d d e ds y s t e mr e s e a r c ho nu c l i n u x f o ra i t m 7c o r e a b s t r a c t e m b e d d e ds y s t e mi ss u c had e d i c a t e dc o m p u t e r 血a ti s s t r i c ti n f u n c t i o n s ,r e l i a b i l i t i e s ,c o s t s ,b u l k a n d p o w e r , w h i c h i s d e s i g n e d a c c o r d i n gt ot h ea p p l i c a t i o n ,b a s e do nc o m m o nc o m p u t e rt e c h n o l o g y a n d w h o s eh a r d w a r ea n ds o f t w a r er e s o u r c e sc a l l b ea d j u s t e da sn e e d e d e m b e d d e ds y s t e mi s c o m p o s e db y t h em i c r o c o n t r o l l e ra n dr e l a t e d s u p p o r ts o 缸v a r e o fw h i c ht i l em i c r o c o m r o i i e ri sr _ h ec o r eo fh a r d w a r e a n dt h es o f t w a r ei st h ek e yf o ra p p l i c a t i o nf u n c t i o n s a n df o rt h em o r e a n dm o r ec o m p l i c a t e da p p l i c a t i o nr e q u i r e m e n t , t h eo p e r a t i n gs y s t e mi s c o m i n g t ot h eb a s e c o m p o n e n t o ft h ee m b e d d e d s y s t e m a r ma r c h i t e c t u r eb a s e dm i c r o - c o n t r o l l e r sh a v em a k et h e 1 e a d i n g p o s i t i o ni nm a r k e ta n dt e c h n o l o g yf o ra r m so u t s t a n d i n gm e r i t l i n u x e x t e n d e dt oe m b e d d e do p e r a t i n gs y s t e mh a sb e c o m et h en e w h o t s p o to f i t t h ef r e ea n do p e ni d e a sa d v o c a t e db yw h o mh a v eb r o k e nt h e t r a d i t i o n a lp l a yr e g u l a ra n df o rw h i c h ,l i n u xi sr a p i d l yb e i n gt h el e a d i n g a c t o ri ne m b e d d e d o p e r a t i n gs y s t e m s t h i s p a p e r i n 仃o d u c e st h et e n t a t i v ee x p l o r ei nl i n u xf o ra n t i : 1 b yc o m p a r i n gp o p u l a re m b e d d e do p e r a t i n gs y s t e m s ,t h eb o mi n p r e d o m i n a n c e o fl i n u xi so b v i o u s 2 b r i e fi n 仃o d u c f i o nt ot h ea r m 7a r c h i t e c t u r ea n df i - e q u e n t l yu s e d s o f t w a r et o o l si n 也ec o u r s eo f d e v e l o p m e n t 3 a n a l y s i st ot h eb o o tp r o g r a mb l o ba n du c l i n u xw h i c hi st h el i n u x f o rm i c r o - c o n t r o l l e rw i 也o u tm m u 4 a f t e rt h ef a m i l i a rt ot h eh a r d w a r ea n d s o f t w a r e ,d ot h ei m p l e m e n t i nt h e d e v e l o p b o a r dp r o d u c e d b yb e i j i n ge f l a gl t d ,a n d m a k e u pt h e d r i v e rf o rt o u c hs c r e e na n du s be t c ac o m p l e t e e m b e d d e d s y s t e mi sb u i l t k e yw o r d s :e m b e d d e d o p e r a t i n gs y s t e m ,u c l i n u x ,u s b ,a r m v 独创性声明 独创性声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名 焦晕 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名: 导师签名: 日期 日期 - 卅4 。j 弓 寸 术语和缩写 a d c :a n a l o gd i g i t a lc o n v e r t e r 模拟数字转换器 a u j :a r i t h m e t i cl o g i cu n i t 算术逻辑单元。处理器核心硬件单元之一 a p i :a p p l i c a t i o np r o g r a mi n t e r f a c e 应用编程接口 a r m :a d a n c e dr i s cm a c h i n e 公司。本文中a r m 指其开发的系列3 2 位微处理嚣 b h :b o t t o mh a l f l i n u x 使用的中断服务方式 b i ge n d i a n :大端格式。数据解释方式之一。高地址字节被解释为数的高位。 b i n s :b a s i c i n p u t o u t p u ts y s t e m 基本输入输出系统 c a c h e :缓存。微处理器硬件单元之一 c i s c :c o m p l e x i n s t r u c t i o ns e tc o m p u t e r 复杂指令集处理器 h u b :特殊的u s b 设备,提供了u s b 设备与u s b 总线连结的接口 i s r :i n t e r r u p ts e r v i c er o u t i n e 中断服务程序 i s t :i n t e r r u p ts e r v i c et h r e a d 中断服务线程 j t e g ;j o i n tt e s t a c t i o ng r o u p 联合测试行动组。用于硬件调试的标准 l i t t l ee n d i a n :小端格式。数据解释方式之一。低地址字节被解释为数的高位 l r u :l e a s tr e c e n t l yu s e d 最少使用。一种调度算法策略 m m u :m e m o r ym a n a g eu n i t 内存管理单元 p c i :p e r i p h e r a lc o n n e c ti n t e r f a c e 外设互连接口。种总线接口 p d a :p e r s o n a l d i g i t a la s s i s t a n t s 个人数字助理 r i s c :r e d u c e di n s t r u c t i o ns e tc o m p u t e r 精简指令集处理器 e o m f s :r o mf i l es y s t e m 文件系统的一种 s o c :s y s t e m o nc h i p s s p :s y n c h r o n o u ss e r i a lp r o t o c o l 同步串行协议 u c l i n u x :针对没有内存管理单元( m m u ) 处理嚣的l i n u x 变种 u s b :u n i v e r s a ls e r j a lb u s 通用串行总线 u s b h o s t :u s b 主机 v f s :v i r t u a lf i l es y s t e m 虚拟文件系统,l i n u x 的抽象接口层 x l p :e x e c u t e i n p l a c e 本地执行。程序不加载到内存中,直接在存储地运行 基于u c i i n u x 的针对a f t 7 核的嵌入式系统研究 1 1 嵌入式系统 第一章嵌入式系统概述 1 1 1 嵌入式系统定义 嵌入式系统是继i t 网络技术之后,又一个新的技术发展方向。由于嵌入式 系统具有体积小、性能强、功耗低、可靠性高以及面向行业应用等突出特征,目 前已经广泛地应用于军事国防、消费电子、网络通讯、工业控制等各个领域 i应用软件 介 i 嵌入式操作系统软件平台 彳了 以处理器微控制器为核心 的硬件平台 裂蔽i1 扶 式象蕊编嘲 嵌入式系统是以应用为中心、以计算机为基础、软件硬件可裁减、满足应用 系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统( 2 3 】。它 将操作系统和功能软件集成于计算机硬件系统之中,筒单的说嵌入式系统就是系 统的应用软件与系统的硬件一体化,类似于b i o s 的工作方式,具有软件代码小, 高度自动化,响应速度快等特点。特别适用于要求实时的和多任务的体系。嵌入 式系统结构如图表l 所示。 1 1 2 嵌入式系统发囊阶段 纵观嵌入式技术的发展,大致经历了以下4 个阶段n 引: 第一阶段是以单芯片的可编程控制器形式的系统,同时具有与检测、伺服、 智能设备相配合的功能。这种系统大部分应用于一些专业性极强的工业控制系统 中。一般没有操作系统的支持,通过汇编语言编成对系统进行直接控制,运行结 束后清除内存。这一阶段系统的主要特点是:系统结构和功能都相对单一,处理 效率低,存储容量较小,几乎没有用户接口。由于这种嵌入式系统使用简便、价 格很低,存储容量较小,几乎没有用户接口,以前在国内工业领域应用较为普遍, 但是已经远远不能适应高效的、需要大容量存储介质的现代化工业控制和新兴的 信息家电等领域的需求。 、lii一厂ili、 兰:! := :竺= = 竺竺兰竺兰全釜:兰竺兰一 _ - _ _ _ _ _ _ l _ _ l _ _ _ _ _ _ l _ _ l _ _ - _ _ _ _ _ _ i _ _ l _ _ - 一 第二阶段是以嵌入式c p u 为基础、以简单操作系统为核心的嵌入式系统。 这一阶段系统的主要特点是:c p u 种类繁多,通用性比较弱;系统开销小,效 率高;操作系统具有一定的兼容性和扩展性:应用软件较专业,用户界面不够友 好。 第三阶段是以嵌入式操作系统为标志的嵌入式系统。这一阶段系统的主要特 点是:嵌入式操作系统能运行于各种不同类型的微处理器上,兼容性好;操作系 统内核精小、效率高,并且具有高度的模块化和扩展性 具备文件和目录管理、 设各支持、多任务、网络支持、图形窗口以及用户界面等功能;具有大量的应用 程序接口( a p i ) ,开发应用程序简单;嵌入式应用软件丰富。 第四阶段是以基于i n t e r a c t 为标志的嵌入式系统,这是一个正在迅速发展的 阶段。目前大多数嵌入式系统还孤立于i n t e r a c t 之外,但随着i n t e r n e t 的发展以 及i n t e r a c t 技术与信息家电、工业控制技术等结合日益密切,嵌入式设各与i n t e r a c t 的结合将代表着嵌入式技术的真正未来。 1 1 3 嵌入式系统工业特点和要求 嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组成,它 是集软硬件子一体的、可独立工作的“器件”。嵌入式系统对嵌入式处理器的功 耗、体积、成本、可靠性、速度、处理能力和电磁兼容性等方面的要求比较严格, 嵌入式系统的硬件都必需高效率的设计,量体裁农、去除冗余,力争在同样的硅 片面积上实现更高的性能,支撑功能包括l c d 显示、存储介质( f l a s h 、s d r a m 、 c f 卡、d o c 等) 、通讯设备( e t h e r n e t 、i r d a 、u s b 等) 等。嵌入式系统有别于 一般计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多是以闪存 ( f l a s hm e m o r y ) 作为存储介质。 嵌入系统软件是实现嵌入式系统功能的关键,它包括与硬件相关的底层软 件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览和应用软件等, 对它的要求也和通用计算机不同p l ,主要体现在: 1 要求软件固态化存储:为了提高执行速度和系统可靠性,嵌入式系统的 软件一般都固化在存储器芯片中或嵌入式处理器中,而不是存储在磁盘 等载体中。 2 要求软件代码质量、可靠性高:尽管半导体技术的发展使处理器速度不 断提高、片上存储器容量不断增加,但在大多数应用中,存储空间仍然 是宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量 都要高,以减少程序二进制代码长度、提高执行速度。 3 要求系统软件具有高实时性:在多任务嵌入式系统中,对重要性各不相 2 基于u c i i n u x 的针对a r m l 7 核的嵌入式系藏研冤 同的任务进行统筹兼顾的合理调度是保证每个任务及时执行的关键,单 纯通过提高处理器速度是无法完成且低效率的,这种任务调度只能由优 化编写的系统软件来完成,因此系统软件的高实时性是基本要求。 总体来看,嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,可 以嵌入到现有任何信息家电和工业控制系统中。从软件角度来看,嵌入式系统具 有不可修改性、系统所需配置要求较低、系统专业性和实时性较强等特点。 1 1 4 互联网与嵌入式系统 随着互连网的普及以及对其深层次的开发和利用,它对人类社会的影响是深 刻而显著的。人们已经习惯于利用互联网来获取信息,发布信息,交流信息。这 是互联网在社会生活中的重要性的形式上的体现。根据钟义信教授的全信息理 论,信息的获取和反馈是整个人类社会螺旋上升信息系统的重要组成部分,这个 环节的效率和质量对整个系统动悉的性能有很大的影响。互联网从根本上改变了 人类的信息交流方式,这种改变深深的影响了人类社会的信息系统。并且可以预 见,这种变革将会深入而持久的继续下去。 随着互联网承载的业务不断增加,人们已经不再满足于在家里,办公室中, 通过固定媒质接入互联网,而是希望能够随时随地的,通过多种手段进入,来充 分利用互联网提供的资源。具体体现为如下的要求: 1 可以通过一个统一的媒质接口,利用多种媒质接入。 2 接入设备要小巧,可移动。 3 接入设备的支撑软件要通用,功能强大而且稳定。 而这些年来通讯技术,微电子技术以及软件业的飞速发展,为满足这种需求 提供了技术上的保证。 首先,目前的通讯系统所提供的通讯手段是多种多样,并且通讯质量也在不 断提高。特别是随着3 g 的到来,“随地”接入互联网已经不再是梦想。 其次,在微电子领域,根据摩尔定律,芯片的集成度不断提高,同时功耗在 不断的下降,微处理器的计算能力和提供的片上外设不断增加。在很小的电路板 上可以集中大部分个人电脑所提供的硬件支持。 最后,起支撑作用的操作系统也从单任务,文本方式发展到了多任务,图形 界面。并且功能不断强大,性能逐步稳定。基本上支持已成标准的各种软硬件接 口。 所以,为满足这方面的需求所需要的技术积累已经到了一定的水平,在各自 的辖域内可以逐步满足人们的要求。 将这三者有机的结合在一起,就是一个广义的嵌入式系统所要研究的内容。 基于u c l i n u x 的针对k p a l 7 核的嵌入式系统研究 它具有如下特点: 1 涉及到多个领域。每个领域本身就是一个可以独立研究的对象,还有很 多问题要去解决。 2 多个领域内容的有机融合。每个领域都有自己独立的系统构架,他们的 结合,并不是简单的叠加。 3 所处的环境条件苛刻,往往面临功耗,体积,可利用资源,性能等多方 面的限制。 正是以上特点,决定了嵌入式领域所面临的基本任务: 1 如何以集成了大量功能外设,针对嵌入式应用的微处理器为核心,设计 出基本的硬件平台。在电路板上扩展与现有硬件电器标准兼容的接口, 可按霈接入独立的硬件功能模组。 2 如何针对嵌入式徽处理器,针对低功耗,有限硬件资源等嵌入式特有环 境条件,设计出支撑软件系统。并兼容流行的p c 机软件模块,或使其改 动尽可能的少。 1 2 嵌入式微处理器k r l l 嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般具备以下几个特 点:对实时多任务有很强的支持能力,能完成多任务且具有较短的中断响应时间; 具有较强的存储区保护功能:可扩展生长的处理器结构,能快速开发出满足应用 的各种性能的嵌入式微处理器;功耗很低。 嵌入式微处理器的基础是通用计算机中的c p u ,但在工作温度、抗电磁干 扰、可靠性等方面一般都作了各种增强。具有体积小、重量轻、成本低、可靠性 高的优点,芯片中往往包括少量甚至一定容量的存储器,一般还包括r o m 、 r a m 、f l a s h 总线接口、常用设备的控制器、各种外设等器件,从而极大地减少 了构成系统的复杂性,因此又称之为片上系统( s o c ) 。 a r m 是英国公司设计开发的通用微处理器体系结构,其主要优势在于3 2 位r j s c 的设计和高效的指令集。a r m 的设计目标是实现具有微型化、低功耗、 高性能的微处理器。2 0 世纪9 0 年代,在a r m 公司的精心经营下,a r m 步入了 世界的舞台。目前在微处理器家族( x 8 6 、m i p s 、p p c 、s h ) 中,a r m 已经在 高性能、低功耗和低价格的嵌入式应用领域确立了市场和技术的领先地位。 作为一种体系结构的微处理器,a r m 微处理器除了具有r i s e 体系结构的 典型特征。还具有以下特点: 1 ) 在每条数据处理指令当中,都控制算术逻辑单元和移位器( a 乙u ) ,以使 a l u 和移位器获得最大的利用率; 4 基于u c l i n u x 的针对a p , m 7 核的嵌入式系统研究 2 ) 自动递增和自动递减的寻址模式,以优化程序中的循环: 3 ) 可以同时存取多条指令,以增加数据吞吐量; 4 ) 所有指令都是条件执行,以增大执行吞吐量; 以上特点是对r i s c 基本体系结构的增强,使得a r m 处理器可以在高性能、 小代码尺寸、低功耗和小芯片面积之间获得好的平衡。 作为一种r i s c 微处理器,a r m 指令集的效率比基于c i s c 指令集的效率要 高得多。指令集由1 个基本指令类型组成,两种用于片上a l u 、环形移位器和 乘法器,3 种用于控制存储器和寄存器之间的数据传送,另外3 种控制执行的数 据流和特权级别。最后3 种指令用于控制外部协处理器,这使得3 种指令集的功 能可以在片外得到扩展。对于一些高级语言的编译器来说,a r m 的指令集是比 较理想的。而且a r m 汇编器的编码也非常简单。a r m 指令集的另一个特征是 所有的指令都支持条件执行。高效指令集和简单设计的结合,使a r m 成为一种 低功耗低价位j 高性能的处理器。 a r m 体系结构为满足不同应用领域的各种需求正在稳步地发展。每一次 a r m 体系结构的重大修改,都会添加极为关键的技术。在体系结构作重大修改 的期间,会添加新的性能作为体系结构的变体。a r m 各个版本介绍如下: 1 ) v 3 结构:将寻址范围扩展到了3 2 位;增加了2 个指令( m r s 和m s r ) 以允许访问新的c p s r 和s p s r 指令:修改了过去用于从异常( e x c e p t i o n ) 返回的指令的功能。增加了两种处理器模式,以便可能在操作系统代码中有 效的使用数据终止和未定义指令异常终止。 2 ) v 4 结构:加入了半字存储操作:加载及进行字节和半字带符号扩展的指令: 在t 变量中,加入了一个转换到t h u m b 状态的指令;使用用户模式寄存器 的新的特权处理器模式;v 4 版本还很清楚地指明了哪个指令将会引起未定 义指令异常发生。 3 ) v 5 结构:提升了a r m 和t h u m b 指令的交互工作能力;让非t 变量同t 变 量一样,使用相同的代码生成技术;增加了一个前导零( c o u n t l e a d i n g z e r o s ) 指令,该指令允许更有效处理整数除法和中断优先程序:增加了软件断点指 令;为协处理器设计者增加了更多可选择指令。 削丧2a r m 体羲艏一览丧 a r m 核体系结构 a r m lv 1 a r m 2v 2 a r m 2 a s 、a r m 3v 2 a a r m 6 、a r m 6 0 0 、a r m 6 1 0v 3 a r m 7 、a r m 7 0 0 、a r m 7 1 0v 3 基于u c i i n u x 的针对a r m 7 核的嵌入式系统研究 a i t m 7 t d m i 、a r m 7 1 0 t 、a l t m 7 2 0 t 、a i t m 7 4 0 t v 4 t s t r o n g a r m 、a r m 8 、a r m 8 1 0 v 4 a r m 9 t d m i 、a r m 9 2 0 t 、a r m 9 4 0 t v 4 t a r m 9 e - s v 5 t e a r m l 0 t d m i 、a i t m l 0 2 0 e 、x s c a l ev 5 t e 以上的名字表明了系统结构上的提升,后面附加的关键字表明了体系结构的 变体。其中的关键字分别表示为: t :t h u m b 状态( 1 6 位指令) 。 m :长乘法支持( 3 2 * 3 2 = 6 4 的乘法或者3 2 * 3 2 + 6 4 = 6 4 乘加运算) 。 d :对调试的支持( d e b u g ) i :嵌入的i c e ( i nc i r c u i te m u l a _ c i o n ) e :d s p 指令支持 j :j a v a 指令支持 表中各版本的a r m 核心实际上是在各种相应处理器核的基础之上,集成和 优化了c a c h e 和m m u 内存管理单元后形成的,它能以单独的c p u 芯片提供给 用户更高的性能。而各种处理器核则可用软i p 模块,或者硬口模块的方式嵌入 到各种用户不同的应用之中,形成相应的s o c 系统芯片,这不仅节省了功耗和 成本,还最大限度地节省了用户的开发时间。 a r m 的体系结构还在不断的发展,但这不是想取代现存的体系结构使它们 变得多余。新的a r m 核和衍生产品将建立在这些结构之上,同时不断与制造工 艺保持同步。体系结构的发展是由不断涌现的新产品和变化的市场来推动的。关 键的设计约束是显而易见的,功能、性能、速度、功耗、面积和成本必须与每一 种应用的需求相平衡。领先的性能功耗( m i p s ,w a t t ) 在过去是a r m 成功的基 石,在将来的应用中它仍是一个重要衡量标准。随着计算和通讯持续覆盖许多消 费领域,功能也变得愈来愈复杂,消费者期望有高级的用户界面,多媒体以及增 强的产品性能。各个厂商也将会推出更高标准a r m 体系的处理器。 1 2 1a r m 7 t d m a r m 7 t d m i 是目前低端的a r m 核,具有广泛的应用,其最显著的应用是 数字移动电话。 a r m 7 t d m i 是从最早实现了3 2 位地址空间编程模式的a r m 6 核发展而来的。 a r m 6 所使用的电路技术使它很难稳定的在低于5 v 的电源电压下工作,这种a r m 核现在已被取代。a 瑚7 弥补了这一不足,而且增加了6 4 位乘法指令,支持片上 调试,t h u m b 指令集和e m b e d d e d l c e 观察点硬件,在此基础上开发出a r m t t d m i 。 a r m 7 t d m i 的含义是:3 2 位整数核a r m 6 的3 v 兼容版本;具有t h u m b l 6 基于u c i i n u x 的针对a r m 7 核的嵌入式系统研究 位压缩指令集( t ) ;支持片上调试( d e b u g ) ,使处理器能够停止以相应调试的 请求:增强型乘法器( m u l t i p l i e r ) ,与前代相比具有较高的性能且产生“位的结 果;e m b e d d e d l c e 硬件以支持片上断点和观察点。 a r m 7 t d m i 使用了3 级流水线,没有硬件浮点支持;它实现了a r m 体系 结构v 4 t ,支持6 4 位结果的乘法,半字,有符号字节的l o a d 和s t o r e 以及t h u m b 指令集;它的e m b e d d e d l c e 模块包含断点和观察点寄存器,使运行的代码能够 停下来以便调试。 1 2 2 软件开发视角的a r m 7 t d m s j & u m r f ns 岫_ 啊蛐 l l 刚 i i 盼 ! 髻 i k 柏j b k i k 月地冉 l l 珥 k r t j ,q k m o l r l + q 刖6 p 劭 舶 剐 i 对 l w j l l r 1 3 , 柠 l r t 。- 晖 r 瞬ol h 哺n “ 柏 舟 f 帕 射 k m a - q k r q 尚5 口q t 盯 r 3 k r 1 k j 删 r i ic 峋 三 三 盏 三 三 三 k ! 竺ik ! ! 坠竺ik 竺塾竺lk 竺竺:竺l 医竺竺l 图袭3 a r m 7 t d m i 开技模型 处理器的指令集定义了微处理器要进行的操作。程序员可以用这些操作来改 变集成了处理器的系统的状态。这些状态是由处理器可见寄存器和系统存储器中 数据项的值构成的。每一条指令可以看作是完成从指令执行前的状态到指令完成 后的状态的转换。尽管典型的处理器有许多不可见寄存器参与指令的执行,在指 令执行前后这些寄存器的值是不重要的,只有可见寄存器中的值有某些意义。 a r m 在不同模式下的寄存器如图表4 所示。 当编写用户态程序时,仅需考虑1 5 个通用3 2 位寄存器( r o r 1 4 ) ,程序计 数器( r 1 5 ) 和当前程序状态寄存器( c p s r ) 。其余寄存器用于系统级编程和异 常出理。 基于u c i i n u x 的针对a r m 7 核的嵌入式系统研究 c p s r 的构成如下。i 和f 分别是i r q 中断和f i r q 中断的使能。m 0 - m 4 定 义了当前的操作模式。n ,z ,c ,v 是上次a l u 运算结果的标志位,表明结果 是否为0 ,越界等。其他位没有使用。 同大多数r i s c 处理器一样,a r m 使用l 0 a d s t o r e 体系结构。这意味着指令 集仅能处理寄存器中的值,而且总是将这些处理的结果放回到寄存器中。针对存 储器的操作是将存储器的值拷贝到寄存器或将寄存器中的值拷贝到存储器。 a r m 处理器支持支持7 种操作模式,每种模式下所能访问的寄存器,以及 每种模式所特有的寄存器如图表4 所示。u s e r 模式是一种受限模式,大多数程 序运行于这种模式;s u p e r v i s o r 模式是一种特权模式,是为操作系统设立的保护 模式,这种模式可以访问任意的系统资源;其他5 种模式是针对各种异常的。每 当有某种异常发生,就进入相应的模式。 a r _ m 7 t d m i 将i o 外设作为支持中断的存储映射设备来处理。也就是说这 些设备中的内部存器如同是a r m 7 t d m i 存储器映射中的可寻址单元,可以象其 它存储器单元一样使用同样的指令来读和写。外设可以通过使用m q 或f i r q 发 出中断请求来引起处理器的注意。另外a r m 还支持其他的自陷操作,将这些统 一称为异常。每当发生异常,处理器就会将当前模式设为具体异常对应的模式, 并跳转到指定地址开始执行:处理完异常后,恢复到中断发生前的模式并返回到 被中断的地址重新开始执行。 所有的a r m 指令都是3 2 位宽,在存储器中以4 字节的边界对准。a r m 指 令集具有鲜明的特征:l o a d s t o r e 体系结构;3 地址的数据处理指令( 即每个源 操作数寄存器和结果寄存器都独立设定) ;每条指令都是条件执行:包含强大的 多寄存器l o a d 和s t o r e 指令;能用在单时钟周期内执行的单条指令来完成一项 普通的移位操作和一项普通的札u 操作;通过协处理器指令来扩展a r m 指令 集。 s a m s u n g 推出的s 3 c 4 4 b o x 是针对手持设备及一般应用的低成本,高性 能3 2 位r i s c 微处理器,内嵌a r m 7 t d m i 核。在综合考虑了系统功耗和成本的 条件下,$ 3 c 4 4 8 0 在片上集成了大量的硬件逻辑:8 k b y t ec a c h e ,片上s r a l t l ,l c d 控制器,2 个u a r t ,4 通道d m a ,内存控制器,5 个定时器,看门够时钟,电 源管理,7 1 个通用i o 端口8 个外部中断源,实时时钟,8 通道1 0 位a d c , 基于o c l i n u x 的针对a 脚7 核的嵌入式系统研冤 9 c 总线接口,s 总线接口等。 $ 3 c 4 4 8 0 使用a r m 7 t d m i 核,o 2 5 u mc m o s 工艺。$ 3 c 4 4 8 0 所具有的低 功耗,结构简单的特点,使它十分适合于低成本而且对功耗要求苛刻的应用。 $ 3 c 4 4 8 0 在片上实现了许多系统外设,降低了整个系统的功耗,简化了额外的 外设配置。另外$ 3 c 4 4 8 0 支持t h u m b 指令集,提高了代码密度;具有片上i c e 调试,支持基于j t e g 的调试;3 2 位硬件乘法器;采用了低功耗总线。 1 3 嵌入式操作系统现状 操作操作系统本身所涵盖的内容十分的广泛,而且每种操作系统都有自己的 特点。嵌入式操作系统,继承了通用操作系统的基本思路和原理,针对应用领 域和依赖的处理器的特性进行了优化,去除了一些冗余的功能,加强了一些嵌 入式领域特殊的需求! 对嵌入式系统的评价指标分为了两部分嵌入式领域所 特别关注的,和基础设施两部分,前者包括支持的微处理器,所占用的内存, 任务调度方式,系统构架,实时性等:后者包括任务间通信方式,是否支持y c p i p 栈,图形支持等。 v x w o r k s 是美国w i n d r i v e r 公司的产品。这是一个典型的嵌入式操作系统, 所有进程的代码与内核的代码静态的连结在一起( 也可以动态的装入) ,并且在 同一个空间中运行。所以,在v x w o r k s 中的所谓系统调用其实就是直接的函数 调用,相当于对库函数的调用。事实上,采用v x w o r k s 的系统并不像其他系统 那样由一个单独的“内核映像”,所有的系统函数都在一个或多个程序库中,应 用软件经编译以后就与这些库中直接或间接用到的函数连接成一个整体。不但如 此,应用进程代码中的函数也可以互相直接调用,因为也是在同一个空间。凡是 可以让多个进程调用的代码都应该是可重入的,也就是不能定义和使用全局量。 可是,有时又必须要使用进程范围的全局量,所以v x w o r k s 提供创建和使用“进 程变量”的手段。这些进程范围内的全局量与具体的进程控制块相联系,成为上 下文的一个组成部分。每当切换进程时就把这些“进程变量”也一起切换了过来。 v x w b r k s 与u n i x 由很深的渊源,它的许多代码实际上是从b s d 演变过来的, 可以说是u n i x 的一个“远房”变种,甚至仍可以说是“u n i x 类”的操作系统。 可是,v x w o r k s 又确实与u n i x 有很大的不同。 首先,v x w o r k s 的进程调度是“可剥夺”调度,其不可剥夺的窗口很小,特 别是文件系统层已经不在不可剥夺的窗口之内( 实际上v x w o r k s 的文件系统模 9 基于u c l i n u x 的 q - 对a r m 7 核的嵌入式系统研究 块是作为可选项提供的) 。不过,v x w o r k s 仍为应用程序提供了手段,使得在运 行中能暂时地禁止被剥夺甚至被中断。其次,v x w o r k s 基本上是为不带存储管理 单元的处理器设计的,所以内核与所有的进程的代码都静态连接在同一空间中。 即使在带有m m u 的处理器上,进程与内核也都在系统空间运行。v x w o r k s 也允 许采用存储管理,但是目的只在于对某些内存区间提供访问保护( 例如只读) 以 及一些特殊的目的,而不在于地址映射,更没有页面的换入换出。 除“可剥夺”以外,v x w o r k s 的进程调度与l i n u x 类似,也是既支持严格按 优先级高低调度,也支持份时间片轮换调度。v x w o r k s 对优先级倒转问题也采取 了措施,采用“优先级继承”算法来防止优先级倒转。由于所有进程都在同一空 间运行,最简单的进程问通信手段是共享内存,例如通过全局变量或循环缓冲区 交换数据。但是那得要有互斥手段的保护才行,所以信号量在v x w o r k s 的应用 程序中用的很频繁。不过v x w o r k s 最重要的进程间通信手段仍是报文传递,此 外还支持信号,管道等传统的u n i x 进程间通信手段。v x w o r k s 与p o s i x 标准完 全兼容,凡是在p o s 基础上作出了扩充改进的,就向用户分别提供两套函数, 使用户在其他符合p o s i x 标准的系统( 如l i n u x ) 上开发运行的软件拿到 v x w o r k s 上,基本上只要重新编译腱接就可运行。然后,如果需要,例如要防 止优先级倒转,用户可以把有关的p o s i x 版本的函数调用抉成经过扩充修改后 的v x w o r k s 版本。这样,软件的移植就会比较顺利,这也是v x w o r k s 的一个优 点。 此外,v x w o r k s 对网络的支持也相当全面,实现了很多网络规程。 由此可见,v x w o r k s 实际上就是把u n i x 内核中的许多成分转移到了外面, 使其变成了“微内核加静态库”的结构,并把不可剥夺的窗口缩到了最小。除此 以外,与u n i x 的不同之处就是不划分系统空间与用户空间。 v x w o r k s 的人机界面即s h e l l 也很有特色。开发人员可以按函数调用的语法 和具体函数的定义打入函数名作为键盘命令,而执行后的返回值则显示于控制台 显示屏上。 w m d r i v e t 公司后来又推出了一个新版的v x w o r k s ,称为v x w o r k sa e 。这个 版本的特点是内核在系统空间运行,而应用软件在用户空间运行。换言之, v x w o r k s 在多年后又向b s du n i x 回归了一步,从这里或许可以看出一些嵌入式 操作系统未来的走向。 1 3 2o n x q n x 是加拿大q n xs o f t w a r es y s t e m s 公司的产品。这是一个典型的类似于 m a c h 的微内核操作系统。除内核以外还包括若干基本的“系统进程”,其中难 基于u c l i n u x 的针对a r m 7 核的嵌入式系统研究 一一个处于内核空间的是进程管理进程,称为“进程主管”,进程名为p r o c 。 除p r o c 是个内核线程,与内核共享空间以外其他系统服务进程,各有自 己的空间。显然,p r o c 之所以是内核线程,是因为它必须直接访问内核中的资源, 即进程控制块。除创建,撤除进程以外,p r o c 进程还担负着为其它进程装入可执 行映像的工作。在q n x 中,应用进程的代码映像并不跟内核静态的连接在一起, 而是在需要投入运行时才由p r o c 进程装入内存。这样,每个应用进程就可以单 独开发和调试也避免了互相闻的干扰。 q n x 的a p i 符合p o s i x 的要求,也为应用软件提供如o p e n 0 ,c l o s e 0 ,r e a d ( ) , w r i t e 0 等系统调用或库函数。 在q n x 中,主要的进程间通信手段是报文传递,为应用软件提供了s e n d ( ) , r e c e i v e ( ) 以及r e p l y ( ) - - = 个系统调用。报文的发送是同步的,发送报文的进程在调 用了s e n d 0 以后就被阻塞,一直要到接收进程调用r e p l y 0 时才能恢复运行。所以, 这种机制不仅为进程间通信提供了手段,也为进程闯的同步互斥提供了有效的 手段。而且,q 心还对传统的点对点报文传递机制作了扩充,形成一种“多边 报文”机制,发送报文的进程可以把报文同时发送给多个进程。此外,q n x 还 提供了另一种进程间通信手段,称为p r o x y 。这实际上就是异步的报文传递,发 送进程不会受到阻塞,接收进程也不需要r e p l y 0 。所以,这二者其实都属于报文 传递,相当于报文传递机制的两个不同选项。除报文传递之外,q n x 也提供传 统的“信号”机制,并支持实时信号。 q n x 实行“可剥夺”调度,基本上按优先级高低调度,而不因执行时间的 长短调整进程的优先级。在优先级相同的前提下可以选择“先进先出”或“轮换 制”。但是,也可以选择所谓“自适应”调度,在一个进程用完了时间片以后就 调低其优先级。此外,q n x 考虑到了优先级倒转问题,可以选择让服务进程以 其自身的优先级运行,也可以让它以“客户”进程的优先级运行。对于接收报文 队列,还可以选择让队列中的报文按发送者的优先级高低排列,而不是按到达的 先后排列,以消除优先级倒转。 q n x s o f t w a r es y s t e

温馨提示

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

评论

0/150

提交评论