(电路与系统专业论文)ck510嵌入式软件开发板的设计与实现.pdf_第1页
(电路与系统专业论文)ck510嵌入式软件开发板的设计与实现.pdf_第2页
(电路与系统专业论文)ck510嵌入式软件开发板的设计与实现.pdf_第3页
(电路与系统专业论文)ck510嵌入式软件开发板的设计与实现.pdf_第4页
(电路与系统专业论文)ck510嵌入式软件开发板的设计与实现.pdf_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

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

文档简介

摘要 嵌入式系统是当前最热门最有发展前途的应用。在嵌入式系统的开发过程中,嵌入式 软件开发平台帮助工程师完成嵌入式软件设计,成功实现嵌入式软硬件的协同工作,嵌入式 开发平台包括嵌入式软件集成开发环境i d e ( 运行在宿主机上) 、调试器仿真器和开发板( 可 以看成是目标机) ,目前国内外最主流的嵌入式开发平台有a r m 平台和m i p s 。 本论文设计一款c k 5 1 0 嵌入式软件开发板,该开发板与c k - c p u 嵌入式软件集成开发环 境c d s 和下载仿真器一起,可组成一个完整的c k 5 1 0 嵌入式软件开发平台。论文设计c k 5 1 0 嵌入式软件开发板的分为硬件和软件设计两部分。 论文设计的c k 5 1 0 嵌入式软件开发板的硬件分为主芯片、存储系统、人机接口、通信接 口四大部分。主芯片采用c k 5 1 0 为内核的h m l 5 2 6 芯片;存储系统由主芯片直接控制外接 s d 洲和f l a s h 芯片组成:人机接口包括的触摸屏、v g a 显示及键盘输入;通信接口包括 u a r t 、g p i o 等常用接口以及u s b 、s d 卡和以太网接口。开发板硬件设计涉及到元器件选 型以及硬件电路设计和实现。 论文的重点是c k 5 1 0 嵌入式软件开发板的软件设计,主要包括b o o t l o a d e r 实现、g c o s i i 操作系统移植、文件系统设计、人机接口和通信接口的各类设备驱动程序设计、g u i 的改进 和移植。其中,设备驱动程序的工作量最大,论文完成了触摸屏、键盘、u s b 、s d 卡和以太 网的设备驱动程序的设计。 论文设计了实验程序,对移植的g c o s i i 操作系统、设计的设备驱动程序以及移植的 g u i 进行测试,实验结果验证了其实现功能的正确性和完整性,同时也验证了c k 5 1 0 嵌入式 软件开发板硬件设计的正确性。 关键词:嵌入式系统,c k 5 1 0 ,g c o s - i i ,b o o t l o a d e r ,文件系统,设备驱动,g u i a b s t r a c t e m b e d d e ds y s t e mi st h em o s tp o p u l a ra n dp r o m i s i n gi ta p p l i c a t i o n s i nt h ee m b e d d e ds y s t e m d e v e l o p m e n tp r o c e s s ,e m b e d d e ds o f t w a r ed e v e l o p m e n tp l a t f o r mh e l p se n 西n e e r st od e s i g ns o f t w a r e a n dt om a k ee m b e d d e ds o f t w a r ea n dh a r d w a r ew o r kc o l l a b o r a t i v e l y e m b e d d e dd e v e l o p m e n t p l a t f o r mi n c l u d e se m b e d d e ds o f t w a r ei n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t ( i d e ,r u n n i n go nt h e h o s t ) ,d e b u g g e r e m u l a t o ra n dd e v e l o p m e n tb o a r d ( c a nb es e e na st a r g e t ) n o w a d a y sm a i n s t r e a m e m b e d d e dd e v e l o p m e n tp l a t f o r ma r ea r ma n dm i p sa th o m ea n da b r o a d i nt h i sd i s s e r t a t i o n ,ac k 510e m b e d d e ds o f t w a r ed e v e l o p m e n tb o a r dh a sb e e nd e s i g n e d ,w h i c h t o g e t h e rw i t hc d s ( t h ec k - c p ue m b e d d e ds o f t w a r ei n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t ) a n d e m u l a t o rc a nc o n s t r u c tac o m p l e t ee m b e d d e ds o f t w a r ed e v e l o p m e n tp l a t f o r m t h ed e s i g no ft h e c k 510e m b e d d e ds o f t w a r e d e v e l o p m e n tb o a r di n t h ed i s s e r t a t i o ni sd i v i d e di n t ot w op a r t s , h a r d w a r ed e s i g na n ds o f t w a r ed e s i g n t h eh a r d w a r ed e s i g no fc k 510e m b e d d e ds o f t w a r ed e v e l o p m e n tb o a r di sd i v i d e di n t of o u r p a r t s :m a i nc h i p ,s t o r a g es y s t e m ,m a n - m a c h i n ei n t e r f a c ea n dc o m m u n i c a t i o ni n t e r f a c e t h em a i n c h i pi sh m 15 2 6b a s e do nc k 510 t h es t o r a g es y s t e mc o n s i s t so fs d r a ma n df l a s hc h i p sw h i c h a r ed i r e c t l yc o n t r o l l e db yt h em a i nc h i p t h em a r l - m a c h i n ei n t e r f a c ei n c l u d e st o u c h s c r e e n ,v g a d i s p l a ya n dk e y b o a r d t h ec o m m u n i c a t i o ni n t e r f a c ei n c l u d e su s b ,s dc a r d ,e t h e m e ti n t e r f a c ea n d c o m m o ni n t e r f a c es u c ha su a r ta n dg p i o t h eh a r d w a r ed e s i g no ft h ed e v e l o p m e n tb o a r d i n v o l v e st h es e l e c t i o no fc o m p o n e n t sa n dd e s i g na n di m p l e m e n t a t i o no fc i r c u i t t h es o f t w a r ed e s i g no fc k 510e m b e d d e ds o f t w a r ed e v e l o p m e n tb o a r di st h ek e yp a r to ft h i s d i s s e r t a t i o n , i n c l u i n gb o o t l o a d e rd e s i g n ,i 上c o s i ie m b e d d e do sp o r t i n g , f i l es y s t e md e s i g n , d e v i c e d r i v e r sd e s i g nf o rt h o s ed e v i c e si nm a n m a c h i n ei n t e r f a c ea n dc o m m u n i c a t i o ni n t e r f a c e ,a n dg u i i m p r o v e m e n t sa n dp o r t i n g d e v i c ed r i v e r sd e s i g nt a k e sal a r g ep a r ti nt h ew h o l ed e s i g nw o r k t o u c h - s c r e e nd e v i c ed r i v e r , k e y b o a r dd e v i c ed r i v e r , u s bd e v i c ed r i v e r , s dc a r dd e v i c ed r i v e ra n d e t h e m e td e v i c ed r i v e rh a v e b e e nd e s i g n e da n di m p l e m e n t e di nt h i sd i s s e r t a t i o n s o m ee x p e r i m e n t a lp r o g r a m sh a v eb e e nd e s i g n e dt ot e s ti t c o s i ie m b e d d e do s ,d e v i c e d r i v e r sa n dg u i t h e s ee x p e r i m e n t sn o to n l yt e s ta n dv e r i f yt h e i rc o r r e c t n e s sa n dc o m p l e t e n e s s ,b u t a l s ov e r i f yt h eh a r d w a r ed e s i g no fc k 5 10e m b e d d e ds o f t w a r ed e v e l o p m e n tb o a r d k e y w o r d s :e m b e d d e ds y s t e m ,c k s l 0 ,i _ t c o s i i ,b o o t l o a d e r ,f i l es y s t e m ,d e v i c ed r i v e r , g u i i i 杭州电子科技大学硕士学位论文 第一章绪论弟一早三百t 匕 1 1 嵌入式系统概述 维基百科是这样定义嵌入式系统, a ne m b e d d e ds y s t e mi sac o m p u t e rs y s t e md e s i g n e dt o d oo n eo raf e wd e d i c a t e da n d o rs p e c i f i cf u n c t i o n so f t e nw i t hr e a l t i m ec o m p u t i n gc o n s t r a i n t s ”首 先是一种“为实现特定功能而设计的”,其次是“通常有实时性方面的约束”。i e e e ( 电气和电 子工程师协会) 和l e t ( 英国电器工程师协会) 定义嵌入式系统,“d e v i c e su s e dt oc o n t r o l , m o n i t o r , 0 1 a s s i s tt h eo p e r m i o no f e q u i p m e n t ,m a c h i n e r yo rp l a n t s ”( 控制、监视或者辅助装置、 机器和设备运行的装置) 。我们只有从各个不同角度,才能够了解到嵌入式系统的全貌。 嵌入式系统【l 】这个概念并非是近几年才出现的。从最初的单片机到如今各种嵌入式微处 理器【2 】、微控制器的大规模应用,嵌入式系统走过了将近3 0 年的发展历史。作为一个为特定 应用环境而打造的系统,嵌入式系统正是在硬件和软件交替发展 3 1 的双螺旋支撑下逐渐趋于 成熟和稳定。 嵌入式系统的出现最初是基于单片机的各种应用。7 0 年代单片机【4 】的出现,第一次实现 了把一个计算机系统集成到一块芯片上,使得家电、汽车、通信工具、工业应用以及成千上 万产品可以通过嵌入单片机来获得前所未有的性能体验。而这些嵌入了单片机的设备本身已 经初步具备了嵌入式的特点,即使这时的应用只限于使用8 位芯片,执行一些单线程的简单 程序,更谈不上“系统”的概念。到了8 0 年代,嵌入式系统程序员开始使用商业级的“操作系 统”编写嵌入式应用软件,这使得嵌入式系统的应用有了质的飞跃,“嵌入式系统”真正地出现 在了各类的应用当中。这些嵌入式实时多任务操作系统的出现,使得嵌入式上层应用开发人 员从以前大量繁琐的劳动中解放出来,同时给了嵌入式系统更为广阔的发展空间。9 0 年代以 后,根据不同的应用环境,以及对多任务、实时性要求的不断提高,实时核逐渐发展为实时 多任务操作系统( i h o s ) ,并逐步成为目前嵌入式系统发展的主流。这时更多的公司看到了 嵌入式系统的广阔发展前景,大力发展自己的嵌入式操作系统。常见的嵌入式系统有:l i n u x 、 u c l i n u x ,w i n c e ,p a l m o s ,s y m b i a n ,e c o s ,u c o s i i ,v x w o r k s ,p s o s ,n u c l e u s ,t h r e a d x , r t e m s 、q n x 、i n t e g r i t y 、o s e 、ce x e c u t i v e 【5 j 随着嵌入式技术的发展前景日益广阔,相 信会有更多的嵌入式操作系统软件出现。 在我国的嵌入式系统领域,比较认同的嵌入式系统概念是:嵌入式系统是以计算机技术 为基础,以应用为中心,软硬件可裁剪,适用于应用系统且对可靠性、功能、体积、成本、 功耗有严格要求的专用计算机系统。它一般由嵌入式m c u t 6 1 、外围硬件电路、嵌入式操作系 统以及上层应用程序四个部分组成,用于实现对设备的控制、监视和管理等功能。 如同每台电脑都有一个c p u 在其中运行,我们每天接触到的各种家电、数码产品、办公 杭州电子科技大学硕士学位论文 设备、汽车电子【7 】以及各种仪器仪表中,也都有一个或者数个m c u ( 微控制器) 默默运行, 担负着控制、运算、信号转换及处理、通信等多项工作。现有的嵌入式系统的数量之大、种 类之多,使人不可能不卷入嵌入式系统的发展潮流。电脑微波炉是一个嵌入式应用系统;电 视机项盒是一个嵌入式应用系统:电视遥控板是一个嵌入式应用系统。高清电视,智能手机 【8 】,智能冰箱都是嵌入式应用系统。 从2 0 0 6 年至2 010 年,中国嵌入式软件产业规模【9 仍将保持快速增长态势,年均复合增 长率为2 5 8 ,到2 0 1 0 年将达到3 3 3 9 6 亿元的规模。d v 、路由器、调制解调器,一切i n t e m e t 的基础设施都是嵌入式应用系统,嵌入式系统的应用变得越来越流行。嵌入式市场的增长主 要是由于嵌入式系统的新应用和新发展。处理器的速度、总线宽度的增加,以及制造商能集成 到一个芯片上的外设数量的加大都增加了嵌入式系统可用芯片的种类,以及其对应用的适应 能力。r i s c ( 精简指令集计算机) 芯片在高端嵌入式应用中现已是常见的了,甚至在不算很 高挡的应用中也是如此。例如s e g a 公司的一种游戏机就有3 个3 2 位h i t a c h is hr i s c 处理器。 小型、可嵌入、完全基于p c 的板卡是中等规模系统中常见的:而超小型的微控制器则统治 低端系统,如p h i l i p s 的8 0 5 1 系列和m i c r o c h i p 公司的p i c 系列。嵌入式系统无处不在, 它渗透于我们生活的各个角落,时下最流行的采用a 4 处理器uo 】( 1 g h za r mc o r t e xa 8 内核) 的i p h o n e 4 和i p a d 2 都是嵌入式领域的杰出代表。作为嵌入式产品他们是科技与艺 术的完美结合。 1 2 嵌入式c p uc k 5 1 0 a r m 公司自1 9 9 0 年成立以来,其设计的a r mc p u 芯核具有功耗低、成本低等显著优 点,因此获得众多的半导体厂家和整机厂商的大力支持,在3 2 位嵌入式应用领域获得了巨大 的成功,目前已经占有7 5 以上的3 2 位r i s c 嵌入式产品市场。华清远见给出的数据是a r m 在3 2 位处理器的市场份额已经超过8 0 ,远远领先其他处理器。a r m 在低功耗、低成本的 嵌入式应用领域确立了市场领导地位。 随着我国集成电路设计水平的不断提高,我国已经拥有自主研发3 2 位高性能嵌入式c p u 的能力。c k 5 1 0 是杭州中天微系统有限公司和浙江大学联合研发的拥有自主知识产权的3 2 位高性能嵌入式c k - c p u 系列中的一款。c k 5 1 0 和摩托罗拉m c o r ec p u 的指令集相兼容, 但是在体系结构和微体系结构方面作了许多改进,增a n t 许多优越特性,提升了许多方面的 性能。c k 5 1 0 具有可扩展指令、可配置硬件资源、可重新综合、易于集成等优点,其在功耗 和电源管理上的表现也很出色,可以通过静态设计、动态电源管理和低电压供叫1 1 】来减少功 耗,也可以通过进入省电模式来节省功耗,还可以实时地关断内部功能模块。 c k 5 1 0 芯片作为第一代c k - c p u 处理器,具有以下方面优越特性: ( 1 ) 采用单发射结构,采用无序执行,按序退休机制。 ( 2 ) 7 级流水线结构,一个c p u 时钟里完成大部分指令。 ( 3 ) 集成了片上指令缓存和数据缓存。指令与数据缓存大小可根据应用情况设置重构。 2 杭州电子科技大学硕士学位论文 ( 4 ) 提供m g u 内存保护机制【1 2 1 ,用于保护存储器系统,提供了存储器管理单元的简单交 替,并且简化了软硬件结构。 ( 5 ) 采用低功耗设计技术 1 3 1 ,并且处理器提供了低功耗管理机制。使用指令 s t o p d o z e w a i t 可以进入低功耗工作模式。 ( 6 ) 采用a m b a 总线【l4 1 ,通用性强,易于s o c 集成。 ( 7 ) 两级跳转预测,支持大小端模式。 ( 8 ) 指令高速缓存和数据高速缓存大小可变。 基于c k 架构的高性能嵌入式c p u 产品正在不断推陈出新,如今c k 系列的产品有 c k 5 1 0 、c k 5 2 0 、c l l o 以及c k 8 0 3 等等。一 1 3 论文的主要工作与组织结构 嵌入式开发平台包括嵌入式软件集成开发环境i d e ( 运行在宿主机上) 、调试器仿真器 和开发板( 可以看成是目标机) 。目前国内市面上主流的嵌入式开发平台有a r m 平台、m i p s 平台和m 6 8 k i ”】平台。本论文设计了一款c k 5 1 0 嵌入式软件开发板,该开发板与杭州中天提 供的c k - c p u 嵌入式软件集成开发环境c d s 和下载仿真器一起,可组成一个完整的c k 5 1 0 嵌入式软件开发平台。 论文总共分为八章。 第一章:绪论,简述嵌入式系统的概念、特点、研究现状和发展趋势,介绍c k s l 0 嵌入 式c p u ,介绍本论文的主要工作与组织结构。 第二章:介绍嵌入式软件开发平台的结构,对当前几个成熟的嵌入式软件开发平台产品 进行分析比较;并介绍作为嵌入式软件开发平台重要组成部分的嵌入式软件开发板的硬件组 成和软件结构。 第三章:介绍c k 5 1 0 嵌入式软件开发板的硬件设计,包括硬件结构以及主芯片、存储系 统、人机接口和通信接口等各组成部分的设计。 第四章:介绍c k 5 1 0 嵌入式软件开发板初始引导程序b o o t l o a d e r 的实现,以及p c o s i i 嵌入式操作系统在c k 5 1 0 嵌入式开发板上的移植,并在移植后设计了实验程序进行验证。 第五章:介绍c k 5 1 0 嵌入式板设备驱动程序的设计与实现,包括触摸屏、键盘、u s b 、 s d 卡、网络等设备驱动程序的设计,并介绍了为u s b 设备和s d 卡设计的文件系统。 第六章:介绍c k 5 1 0 嵌入式软件开发板g u i 的实现过程,包括对p c g u i 图形生成算法 的改进以及p c g u i 在c k 5 1 0 嵌入式软件开发板上的移植。 第七章:c k 5 1 0 嵌入式软件开发板的实验验证。通过设计三个实验程序,对设计的设备 驱动程序以及移植的g u i 进行测试,验证其实现功能的正确性和完整性,同时也验证c k 5 1 0 嵌入式软件开发板硬件设计的正确性。 第八章:总结与展望,对论文的研究工作进行总结,并给出今后需要进一步努力的方向。 杭州电子科技大学硕士学位论文 第二章嵌入式软件开发平台与开发板 本章主要介绍嵌入式软件开发平台和嵌入式软件开发板。 2 1 嵌入式软件开发平台 嵌入式应用从以前的简单控制发展到今天,已经有很多非常复杂、非常高端的应用。由 于这种复杂性的提高,目前在嵌入式应用的开发过程中,嵌入式软件开发平台所起的作用越 来越大。如何帮助工程师完成嵌入式软件设计,成功实现其与硬件的协同工作,是嵌入式系 统软件开发平台必须达到的目标。 2 1 1 组成结构 嵌入式软件开发平台结构如图2 1 所示,主要由以下几个部分组成: ( 1 ) 运行在宿主机( p c ) 上的功能强大的交叉编译环境【16 】; ( 2 ) 针对目标机嵌入式处理器硬件的编译器: ( 3 ) 宿主机与目标机通信的调试器、仿真器; ( 4 ) 目标机上运行的板级支持、操作系统内核、外围库和应用程序; ,一、 厂交叉编译器、 ,、 应用程序 编辑器 调试 浏览器 外围库 图 对象观察器 代理 内核组件 形s h e l l 工具 服务 界 、其他工具, 内核 l 一 ij i 面 ( 调调试器j 。 b s p 厂、 f 士争肿胜古旦莹、 厂、 扒什7 具嵛一 f 葡甭:牛爱多吞 7l 哆oil 爿、叫h h p 、i b m 、s u n 、w i n d o w s 调试主机 调试目标系统 图2 1 嵌入式软件开发平台组成结构 而所谓的嵌入式软件开发板,实际上就是嵌入式软件开发平台的一个通用的目标机。 4 杭州电子科技大学硕士学位论文 2 1 2 当前几种主流的嵌入式软件开发平台 w o r k b e n c h 2 6 e c l i p s e 是一个开放源代码的、基于j a v a 的可扩展开发平台。就其本身而言,它只是一 个框架和一组服务,用于通过插件组件构建开发环境。e c l i p s e 1 6 】的本身只是一个框架平台, 但是众多插件的支持,使得e c l i p s e 拥有较佳的灵活性。许多软件开发商以e c l i p s e 为框架开 发自己的i d e 【l7 1 。尽管e c l i p s e 是使用j a v a 语言开发的,但它的用途并不限于j a v a 语言; 例如,支持诸如c c + + 、c o b o l 和e i f f e l 等编程语言的插件已经可用或预计会推出。e c l i p s e 框架 1 列还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。 w o r k b e n c h2 6 提供的各种商用级别设备软件开发、设计和测试工具的集成,甚至可以将 这些工具安装到己预先部署的e c l i p s e 模块中。风河公司【1 9 】的设备软件开发工具集冽为设备 制造商综合配备了v x w o r k s 和w i n dr i v e rl i n u x 平台下各种深度应用的中间件技术【2 1 1 ,从而 使他们能够更专注于构建各种差异化的设备软件应用,同时更准确地理解和实现复杂项目的 需求,加快产品的市场响应速度。 w o r k b e n c h2 6 在基于标准的e c l i p s e 开发环境下提供一系列设备软件工具,确保客户可 以获得更高质量的产品、更优性能的内核【2 2 】和中间件以及更高的开发效率。作为w o r k b e n c h 的最新版本团】,w o r k b e n c h2 6 还实现了针对整个产品生命周期的设备软件开发优化,并且提 供了知识共享中心和诊断工具特别小组 2 4 1 ,帮助客户实现运行系统的快速测试和修复。 w o r k b e n c h 2 6 嵌入式开发平台的特点和优势: ( 1 ) 以开放的e c l i p s e 平台为框架,调试环境可充分进行客户化定制; ( 2 ) 单一的全功能平台,涉及到产品的整个开发周期 2 习; ( 3 ) 广泛的适用性,特别适合复杂的目标系统。 a r ma d s a r ma d s l 2 6 1 是a r m 公司推出的新一代a r m 集成开发工具。现在a d s 的最新版本是 1 2 。a r ma d s 用来取代a r m 公司上一代开发工具a r ms d t 。它除了可以安装在w i n d o w s 操作系统下,还可以在l i n u x 操作系统上运行。 a d s 由代码生成工具、命令行开发工具、a r m 时实库、集成开发环境、指令集模拟器、 a r m 开发包和a r m 应用库组成。用户可以使用上述部件为a r m 系列的r i s c 处理器编写 和调试应用程序。 a d s 的各个组成部分如下所示: ( 1 ) 命令行开发工具,完成将源代码编译,链接成可执行代码【2 4 】的功能。 ( 2 ) a r m 运行时库,包含a n s ic 库、c + + 库。 ( 3 ) c o d e w a r r i o r 集成开发环境。 c o d e w a r r i o rf o ra r m 是一套完整的用于编程应用中硬件b r i n g - u p 的集成开发工具【2 7 1 ,充 分发挥a r m 的优势,使开发人员能够更好的应用尖端的s o c 技术。该工具专为基于a r m 杭州电子科技大学硕士学位论文 r i s c 的处理器而设计,通过加速并简化嵌入式开发过程中的每一个环节,使得开发人员只需 通过一个i d e 环境就能开发出a r m 产品,在开发过程中使得开发人员仅仅需要依赖 c o d e w a r r i o r 开发环境,不需要关心其它事情,把所有精力都投入到代码编写上来。 c o d e w a r r i o r 集成开发环境( i d e ) 伫8 】为开发人员提供了直观强大的g u i 。用户可以使用 a d s 的c o d e w a r r i o ri d e 为a r m 、m i p s 、m 6 8 k 等处理器开发程序代码。通过上面提供的 功能,c o d e w a r r i o ri d e 有效的缩短了嵌入式软件项目的开发周期。 t k s t u d i 0 t k s t u d i o 集成开发环境是广州致远电子有限公司开发的一个嵌入式芯片级、系统级软件 开发平台,是一款内置强大编辑器的多内核编译调试环境,支持k e i lc 5 1 、s d c c 、g c c a r m 、 a d s 、i a ra r m 、m d k 、r v d s 、c y g w i n 、g c ca v r 、w i n d r i v e r 等编译工具链,支持8 0 5 1 、 a r m 7 a r m 9 a r m l l 、c o r t e x m 3 c o r t e x m 0 、x s c a l e 、a v r 、c c o r e 等内核调试,支持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 内核模块、l i n u x 应用程序等的调试。可以完成从工程建立和 管理,编译,链接,目标代码的生成,到软件仿真,硬件仿真( 挂接t k s 系列仿真器的硬件) 等完整的开发流程。 目前的t k s t u d i ov 4 0 ,无论是稳定性、友好性还是功能性方面都得到了很大的提升。 t k s t u d i ov 4 0 加入了l i u n x 调试的支持,包括b o o t l o a d e r 调试【2 9 】、l i n u x 内核调试、l i n u x 内 核模块调试和l i n u x 应用程序调试。t k s t u d i o 直接通过t k s c o p e 系列仿真器进行l i n u x 调试, 摒弃了传统的通过命令行、k d b 、k g b d 等补丁进行调试的方式:支持从现有的调试文件直 接进行调试,支持自动创建源代码树,完全在w i n d o w s 下开发和调试l i n u x ,让l i n u x 开发 【2 9 】和调试更简单、更快捷。t k s t u d i ov 4 0 还提供了e x t 2 文件系统制作工具,使用户在 w i n d o w s 下就轻松制作l i n u x 根文件系统。 2 2 嵌入式软件开发板 如2 1 节中曾经提及,嵌入式软件开发板是嵌入式软件开发平台的一个通用的或者至少 比较通用的目标机,作为嵌入式软件开发平台的一部分提供给进行嵌入式系统开发的用户。 用户在宿主机上完成嵌入式软件的编码、编译后,将软件下载到这个通用目标机上运行,就 可以进行板级的软件调试。 2 2 1 硬件组成 嵌入式软件开发平台并不支持所有的嵌入式c p u ,一般只支持一个系列或几个系列的嵌 入式c p u ,如a r ma d s 只支持a r mc p u 。作为嵌入式软件开发平台的一部分,嵌入式软 件开发板硬件中肯定包括开发平台所支持的嵌入式c p u 中的某一款。 一块功能基本完整的嵌入式软件开发板 3 0 】应该具有以下组成: ( 1 ) 有内嵌某款嵌入式c p u 的微处理器芯片; ( 2 ) 有r a m ,f l a s h 等存储器。如果需要支持操作系统,存储器至少1 6 m 以上; ( 3 ) 有l c d 显示屏( 可带触摸) 、键盘按键等人机接口; 6 杭州电子科技大学硕士学位论文 ( 4 ) u s b 、s d 卡接i z l 、串口等通信接口; ( 5 ) j t a g 接口用于调试。 2 2 2 软件结构 嵌入式软件开发板实际上就是一个完整的嵌入式系统。嵌入式系统作为一个完整的、独 立的、能够单独运行的系统,与通用计算机系统相比,具有许多独有的特点。在软件上,这 些特点产生了嵌入式系统与通用计算机系统的区别,这些区别不仅表现在整个系统软件的结 构上,也体现在软件的开发方法【3 1 】上。 嵌入式软件开发板的软件层次结构图如图2 2 所示: 用户上层应用软件 用户底层应用软件 g 协议设备驱动文件系统 操作系统层 板级支持包 初始化引导代码 图2 2 嵌入式软件开发板嵌入式系统的软件分层结构图 初始化引导代码b o o t l o a d e r t 3 2 】即引导加载程序。它是系统上电后运行的第一段程序代码。 通过这段代码,可以初始化存储器空间的映射【3 3 1 ,设置系统的软硬件环境到合适状态,为最 终调用操作系统内核【3 4 】准备好环境。b o o t l o a d e r 的启动一般分为两个阶段。阶段一用汇编语 言来实现,主要完成的是与c p u 体系结构【3 5 】有关的初始化,如c p u 、c a c h e 、堆栈的初始化。 阶段二主要完成的将操作系统内核映象加载到内存中。 板级支持包b s p 是介于主板硬件和操作系统之间的一层,主要目的是为了使操作系统能 够更好的运行于主板硬件层上。b s p 对于相同的硬件实现的功能可能是相同的,但是对于操 作系统而言,运行在同样硬件上的不同的操作系统有着不同定义形式的b s p ,所以在编写b s p 时,必须严格遵循该嵌入式系统b s p 的定义形式。 操作系统是控制程序运行,管理系统资源,为用户提供操作界面的系统软件的集合。 设备驱动与操作系统相关,以l i n u x 操作系统为例,l i n u x 中的设备分为字符设备、块设 备和网络设备。字符设备没有缓冲区,按照字节进行读写。块设备在读写时是以内存中块的 方式进行的,如d m a 方式。他们实现的区别仅在于内核和驱动程序的软件接口上。网络设 备面向的上一层不是文件系统层而是网络协议层。l i n u x 网络驱动程序体系结构如图2 3 所示, 整个驱动程序框架分为4 层:从上倒下依次是网络协议接口层,网络设备接口层,设备驱动 7 杭州电子科技大学硕士学位论文 功能层和设备媒介层。设计网络驱动的主要工作就是根据网络接口层定义的d e v i c e 结构和底 层具体的硬件特征完成设备驱动。 图2 3l i n u x 网络驱动程序体系结构 文件系统是操作系统用来管理存储介质上的文件的方法和数据结构。文件系统不仅对文 件在介质上的存储进行管理,同时为操作系统提供操作函数。常用的文件系统有f a t 3 2 、n t f s 以及网络文件系统n f s ( n e t w o r kf i l es y s t e m ) 等等。 图形用户界面g u i ( g r a p h i c a lu s e ri n t e r f a c e ) 3 6 1 是指采用图形方式 3 7 】显示的计算机操作 用户界面 38 1 。g u i 的广泛应用极大地方便了非专业用户通过窗口、菜单、按键等方式使用计 算机。人们从此不再需要死记硬背大量的命令。嵌入式g u i 具有轻型、占用资源少、高性能、 高可靠性、便于移植、可配置等特点。 8 杭州电子科技大学硕士学位论文 第三章c k 51 0 嵌入式软件开发板的硬件设计 本章主要介绍c k 5 1 0 嵌入式软件开发板的硬件设计。 3 1 开发板硬件结构的设计 c k 5 1 0 嵌入式软件开发板的硬件设计主要考虑开发平台的通用性、多样性以及性价比等 因素,丰富的外围扩展能够使用户在开发板上迅速开展各种基于c k 5 1 0 的嵌入式软件开发, 也可以使用户在选用c k 5 1 0 设计s o c 前进行必要的性能评估。开发板的硬件结构如图3 1 所 示,分为主芯片、存储系统、人机接口、通信接口四大部分。 通 信 接 口 图3 1c k 51 0 嵌入式软件开发板的硬件结构图 主芯片 采用杭州摩托罗拉的使用c k 5 1 0 为内核的h m l 5 2 6 芯片。 存储系统 主芯片提供了s d r a m 接口和f l a s h 接口,可以直接控制外接s d r a m 和f l a s h 芯片, 形成存储系统部分。外接s d r a m 芯片采用两块h y n i x 公司的1 6 m 存储器芯片 h y 5 7 v 6 4 1 6 2 0 e t7 ,用于运行程序;外接f l a s h 芯片采用s p a n s i o n 的容量为1 6 m b y t e 的芯片 a m 2 9 l v l 2 8 m h l1 3 r e i 。 人机接口 人机接口包括的触摸屏、v g a 显示及键盘输入。触摸屏( 带触摸输入的l c d 屏) 包括 了显示和输入两个功能,主芯片输出通过外接l c d 控制芯片控制触摸屏进行显示,而触摸屏 采集到的触摸屏输入信号通过外接触摸屏控制芯片返回给主芯片处理;对v g a 显示,主芯 9 杭州电子科技大学硕士学位论文 片输出通过同一个外接l c d 控制芯片和外接高速数模转换芯片,转化成v g a 信号送到v g a 显示器;键盘输入采用2 x 3 格按键模拟键盘功能。l c d 显示控制芯片选用晶门科技的 s s d l 9 6 1 ,触摸屏控制芯片选用c s 7 1 4 6 ,触摸屏选用维晶光电的3 5 寸带触摸l c d 屏t 3 5 0 , 高速数模转换器芯片选用a d v 7 1 2 5 。 通信接口 通信接口包括u a r t 、g p i o 等常用接口,以及u s b 、s d 卡和以太网接口。主芯片提供 了u a r t 、g p i o 接口和u s b l 1 主机控制器,可直接使用;s d 卡通信采用g p i o 模拟s p i 口实现;主芯片通过网络控制芯片和网络变压器连接网卡接口。以太网控制芯片选用的 d m 9 0 0 0 ,网络隔离变压器型号为h 11 0 2 。 3 2 内嵌c k 5 1 0 的主芯片 h m l 5 2 6 是杭州摩托罗拉公司的一款针对数字电视机项盒的数字电视信源解码s o c 芯 片,内部集成有3 2 位高性能r i s cc p uc k 5 1 0 、m p e g 2 音视频解码器、p t i 处理器、视频 显示控制器、电视信号编码器以及比较丰富的外围接口部件,为多种机项盒应用提供全面支 持。图3 2 为其详细结构。本论文设计的是c k 5 1 0 嵌入式软件开发板,因此不会用到h m l 5 2 6 的音频、视频、电视等专用电路模块,只用其c k 5 1 0 和通用外围接口。而之所以选择h m l 5 2 6 , 是因为它是一款大规模量产芯片,适合开发板的大量生产。 图3 2 芯片h m l 5 2 6 结构详图 h m l 5 2 6 的嵌入式c p u 内核采用c k 5 1 0 。c k 5 1 0 通过静态设计、动态电源管理和低电 压供电来减少功耗。它可以通过进入省电模式来节省能量,还可以实时关闭内部功能模块。 h m l 5 2 6 的中断控制器用来统一管理外部硬件中断,再向c p u 发送中断请求和相应的中 断向量。外设中断请求有1 6 个,向c p u 发送的中断请求包括f i n t ( 快速中断请求) 和i n t 1 0 杭州电子科技大学硕士学位论文 ( 普通中断请求) ,中断向量为v e c 。h m l 5 2 6 的定时器( t i m e r ) 的功能是根据设定产生一个 或者一组等时间间隔的中断通知c p u 。共有4 个3 2 位定时器,每个定时器可以单独工作, 也可两两组合成为一个6 4 位定时器。h m l 5 2 6 的看门狗( w a t c hd o g ) 的功能是监控和唤醒。一 旦超过预定的时间没有得到外部敲门信号,看门狗将产生一个系统复位信号唤醒系统。另外, 看门狗还可以将外部复位信号延长,防止因为复位信号过短,导致系统复位不完全。 h m l 5 2 6 的存储器接口包括s d r a m 接口和f l a s h 接口。s d r a m 用于为操作系统和应 用程序提供运行空间、缓存解码中的临时数据、为各种通信过程提供缓冲等。h m l 5 2 6 的 s d r a m 接口支持1 6 3 2 位数据位宽内存,最大容量为6 4 m b ;支持b u r s t 操作、自动刷新、 d q m 、可编程c a s 潜伏、可编程b u r s t 等。f l a s hm e m o r y 以存放操作系统、应用程序为 主。h m l 5 2 6 的f l a s h 接口支持8 1 6 位数据读写,支持最大容量为3 2 m b 。在本开发板的存 储系统部分的设计中,h m l 5 2 6 的s d r a m 接口和f l a s h 接口直接控制外接s d r a m 和 f l a s h 芯片。 h m l 5 2 6 的u a r t 接口用于串行数据的接收和发送,主要由数据总线接口、控制逻辑和 状态接口、波特率发生器、发送和接收等部分组成;h m l 5 2 6 的u s b l 1 主机控制器支持1 2 m h z 全速传输以及1 5 m h z 低速传输,在传送过程中可以进行多种运算扩展功能,使得传送到目 的地址的数据是经过加工的数据,赋予软件编程一定的灵活性;h m l 5 2 6 共有3 2 个g p i o 口, 其中有多个设备( 如g p i o 、s d r a m 、t s 、u a r t 、s m a r t c a r d 、l e d 、p c 和键盘) 复用g p i o 管脚。用户可通过设置g p i o 管脚复用寄存器p i nm u xs e l 来选择需要使用的设备。 图3 3 为h m l 5 2 6 芯片管脚图,其中: h m l 5 2 6 芯片的s d rb a 0 和s d rb a l 引脚作为存储系统中的s d r a m 和f l a s h 的片 选,s d ra 0 s d ra 1 2 引脚作为s d r a m 芯片的数据线是,s d rd 8 - s d rd i s 、s d ra 0 s d ra 1 2 以及s d rd q m 0 - - - s d rd q m 3 引脚作为f l a s h 芯片的数据线。 h m l 5 2 6 芯片的s d rd 0 s d rd 7 和s d rd 1 6 , 一s d rd 2 3 数据线数据,经过总线转换 器芯片,输出到人机接口中的触摸屏数据线d 0 - - 一d

温馨提示

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

评论

0/150

提交评论