下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、西南科技大学硕士研究生学位论文第U页 Abstract西南科技大学硕士学位论文ARM 系统图文显示技术与图形中间件的研究与开发姓名:赵仁杰申请学位级别:硕士专业:计算机应用技术指导教师:李众立20070403西南科技大学硕士研究生学位论文 第 I 页摘要本论文题目来源于导师所进行的,基于 A 跚芯片和嵌入式 Linux 平台的高性 能、开放式新型数控系统科研项目的一个子课题。论文的主要目标是:为嵌入式应用研发 LED 高清晰图形界面软硬件接口,以及底层驱动无关的图 形中间件系统。本论文研制的系统,为嵌入式数控应用提供了目前所缺乏的高分辨率图形界面支持,并有效解决了随着软硬件环境的迁移,上层人机
2、交互应用软件 也需完全从头开 发的问题。本论文分析并裁减出的 Linux 内核,结合多种文 件系统优点研发出的合 理的 Flash存储结构,能给数控系统的软硬件开发带 来便利。从分析 Linux 驱动机制 和 LED 控制器特点入手,研发了高分辨率 LED 驱动,满足了人机交互的需求。并针 对上层应用软件的研发,详细分析了中间件系统的原理,设计了轻量级的实现,为二次 开发也进行了良好的铺垫。最后辅以系统应用,阐述了继续研发的方向。关键词:A 跚嵌入式系统 Linux LCD 驱动中间件The field of study of this paper sources from a projcot
3、 that my tutor is carrying on:a newhigh-performa nce,ope n digital con trol system based on ARM processor and embeddedLinu x.This paper aims atdeliveri ng a high-resoluti on LCD graphic software/hardware in terface and a loW?level hardware driver depe ndless graphical middleware for embedded applica
4、ti on developing.The system desig ned and described in this paper delivers a highresoluti on graphicaluser in terface support for embedded applicati on, which is now sca nty. The system alsosolves the applicati on level user in terface softwares?full rewriti ng problem in troduced byhardware/softwar
5、e en vir onment shift in g.The Linux kernel an alyzed and con figured by theauthor and the proper Flash storage system that enjoys more tha n one file system?S excellenee can bring adva ntages into the software/hardware developme nt of digital control system.The thesis then starts from analyzing the
6、 Linux driver mechanism and LCD con troller,designes a high-resoluti on LCD driver which successfully meets the requireme nt of user interface.Target ing at assist ing higher level applicati on develop in g,this paperalso researches On the prin ciple of graphical middleware and fini shes a light imp
7、lementatio n, which will h e a good preparati on for the whole system?S future develop in g.Thisarticle ends with an applicati on case and expla ining the prospect field of further research.Keywords:APdVI;Embedded System;Linux;LCD Driver;Middleware 】独创性声明本人声明所星交的论文是我个人在导师指导下进行的研究 -T 作及取得的研究 成果。尽我所知,
8、除了文中特别加以标注和致谢的地方外,论文中不包 含其他人已经 发表或撰写过的研究成果,也不包含为获得西南科技大学或其它教育机构的学位或证书面使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示了谢意。签名:走再蠢?.日期:沙 07.6,.7关于论文使用和授权的说明本人完全了鳃西南科技大学有关保留使用学位论文的规定,即:学校有权保留 学位论文的复印件,允许该论文被查阅和借阅;学校可以公布该论 文的全部或部分内 容,可以采用影印、缩印或其他复制手段保存论文。(保密的学位论文在解密后应遵守此规定签名:趑争走一导师签名 日期:劲 07.6.7西南科技大学硕士研究生学
9、位论文第 1 页1 绪论本课题是针对嵌入式系统应用中使用越来越广泛的液晶显示人机交互界 面,而 进行的接口开发和图形中间件开发。主要是为基于 ARM 核,Linux 操作系统的嵌入 式应用提供一个良好的 LCD 接口驱动以及硬件无关的,方便数 控系统上层开发的图 形中间件界面。1.1 课题来源及选题背景随着微电子技术的不断创新和发展,嵌入计算机系统(简称嵌入系统,作为计算 机应用的一个重要领域,已深入到社会的方方面面,越来越为人们 所关注.信息技术的 高速发展,使得嵌入式技术的应用,也广泛渗透到人的 工作、生活中。从家用电器、 手持通讯设备、信息终端、仪器仪表、汽车、航天航空、军事装备、制造工
10、业、过程控制等,各种形式多样的嵌入式产品 已经成为信息化时代市场中的主流“ 1.本论文所研究的课题,就来源于笔者导师所进行的,基于 A 蹦芯片和嵌入式 Linux 平台的高性能、开放式新型数控系统科研项目的一个子课题。随着嵌入式系统在数控机床上的应用越来越广泛。市场对人机图形界面的要求也越来越高,对开发的速度和效率要求也越来越高。而导师课题先前的基于ARM 的数控系统实现方案,在图文并显的高清晰人机界面上一直缺失,造成了上层应用控制软件界面简单,交 互能力弱等不足。为改善这样的状况,本论文的主要工作目标定位为:为嵌入式应用 研发 LCD高清晰图形界面的软硬 件接口 ,以及底层驱动无关的图形中间
11、件系统。使 得流行的ARM+Linux 硬件开发平台能够更好的适应数控系统的上层应用需求.1.2 嵌入式系统的发展与应用现状1.2.1 嵌入式系统的特点嵌入式系统是计算机的一种应用形式,通常指埋藏在宿主设备中的微处理机系 统。对用户而言,此类计算机一般不被设备使用者在意,亦称理藏式计算机,典型机种 如微控制器、微处理器和 DSP 等。嵌入式处理器使宿主设 备功能智能化、设计灵 活和操作简单,他们小到移动电话,大致飞机导航系统,这些设备功能各异,千差万别,但都具有功能强、实时性强、结构紧凑、西南科技大学硕士研究生学位论文第 2 页可靠性高和面向对象等共同特点。嵌入式系统通常由硬件和软件两部分组成
12、。嵌入式处理器一般具有以下 4 个特点2113J:(1 对实时多任务操作系统具有很强的支持能力(2 具有功能很强的存储区保护功能。(3 处理器结构可扩展。(4 低功耗。嵌入式系统的运行除了特定的硬件之外,还需要特定的嵌入式软件系统。其中 最重要的当属嵌入式操作系统。嵌入式操作系统 EOS(Embedded Operati ng System 是一种用途广泛的系统软件,过去它主要应用于工业控 制和国防系统领域。EOS 是 相对于一般操作系统而言的,它除具备了一般操作系统最基本的功能,如任务调度、 同步机制、中断处理、文件功能等外,还有以下特点 n,:(1 可装卸性。开放性、可伸缩性的体系结构.(
13、2强实时性。EOS 实时性一般较强,可用于各种设备控制当中.(3 统一的接口。提供各种设备驱动接口。(4 操作方便、简单、提供友好的图形 GUI,图形界面,追求易学易用。(5 提供强大的网络功能,为各种移动计算设备预留接口。(6 强稳定性,弱交互性。(7 更好的硬件适应性,也就是良好的移植性。另外,嵌入式软件中甸件与通常所说的软件中间件也有着很大的不同。通常所说的软件中间件一般可分为消息中间件、交易中间件、数据库中问件、安全中问件等目前流行的用于 Web 应用服务器上;而嵌入式软件中间件更具有为特定应用 领域而设计的特性,因而没用像通用软件中间件那样明确的 划分,嵌入式软件中间件 既可以是对某
14、些复杂外设的驱动程序,也可以是运 行在用户空问的应用程序内核,功 能上也可以涵盖通讯、交易、安全等多个 方面“J。1.2.2 嵌入式系统的应用嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算杌的外 部设备中就包含了 510 个嵌入式微处理器,鼠标、硬盘、显示卡、显示器、Modem、网卡、声卡、打印机、扫描仪、数字相机、USB 集成器等均 是由嵌入式处理器控制的。在制造工业、过程控制、通信、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等方面均是嵌入式计算机的西南科技大学硕士研究生学位论文第 3 页应用领域。随着技术的进步与发展,很多传统的仪器设备不但其功能日益强大,而且
15、人机界 面也日益友好丰富。其显示系统由原来的简单LED 到液晶 LCD 再到点阵式液晶LCM,目前很多仪器设备的显示系统正向着彩色化、图形化的方向发展。而且很多复杂的仪器其显示设备只能使用彩色图形方式,如化学检测仪器、频谱分析仪,大 型旋转机器监测仪、以及很多的医疗仪器,它们都需要用不同的颜色显示不同的图 像“。,针对这一问题研究了一种使用小屏 幕彩色液晶为显示单元,以嵌入式主板为 控制核心的高档仪器方案,其具有功能强大,成本低,体积小巧,携带方便,彩色图形显 示的优点 m。液晶显示器作为嵌入式系统开发应用的首选,还具有以下无可替代的优点 III!(1 低压、徽功耗。(2平板型结构。(3 显示
16、效果好.(4 长寿命。(5 无辐射,无污染。因此液晶成为了嵌入式系统开发中,高要求人机界面开发应用的首选。在应用 需求的驱使下,许多工作在 Linux 下的图形界面软件包的开发和移植工作中都涉及 到底层 LCD 驱动的开发问题。因此在嵌入式系统中开发 LCD 驱动得以广泛运用“? JI。1.2.3 嵌入式数控系统应用前景由于现代机械加工业逐步向柔性化、集成化、智能化方向发展,评定数控机床 及系统效能的基本指标也由传统的工作精度和切削能力改为用高效柔 性和高精化 的程度来衡量。数控机床不但是机电工业的重要基础装备,是汽车、石化、电子等支柱产业生产现代化的主要手段。数控机床也是世界第三次产业革命的
17、一个重要内容据统计,当前,仅在珠江三角洲,电子信息产 业领域所需机床的金额就有 60 亿元 左右。在 九五”末期,国产数控机床的 国内市场占有率达 50%,配国产数控系统(普 及型也达到了 10%。90 年代以来,我国数控机床市场需求急剧增加,到 2003 年已成 为世界第一大机床 消费国和第四大机床生产国。2004 年,我国生产数控机床 5 万台, 我国数控机床进口达2 万多台,这表达了市场对高性能数控系统的迫切需求。西南科技大学硕士研究生学位论文 第 4 页 1.3 本课题主要研究内容与意义本课题的主要研究内容如下:(1 通过深入广泛的研究目前的开发资源和应用前景,并结合实际应用对象一一
18、开放性数控系统的特点,确定系统的软硬件开发方案为:ARM+Linux 的组合。(2 完成硬件系统的选型和电路板的搭建,实现的硬件平台成本和功能 都褥到很 好的满足。研究并移植了针对性的 Linux 内核,实现了健壮灵活的双文件系统 Flash 存储管理,使整个系统有极好的性能和扩展性。(3 分析 LCD 控制器的硬件特性,解决了 Linux 下所缺乏高分辨率液晶屏驱动开 发;并为数控平台针对性地开发了图形中间件系统,为刀具控制和 轨迹仿真开发提供 了平台支持和图形算法支持,具有良好的便利性。.最后应用该系统于实际的数控平台,证明其性能的达标,功能的完善稳定,并指 明了下一步的研究方向。本项目进
19、行的研究,其最终的意义还在于:目前国内的嵌入式领域开发,在人机界面的开发上,已经越来越多的开 始使用 SNT/TFT类型的 LCD 来替代传统的 LED 显示。根据市场调查和文献查 询显示,目 前项目大多在使用 640 x480,支持 256 色或更高颜色数的 LCD。然而随着嵌入式应 用的越来越广泛,嵌入式系统的复杂度相应的越来越高,在人机交互时需要同时进行 输入和输出的信息越来越多,这必然对人机界面也提出了更高的要求。可以预见在 不就的将来,很多应用如果继续采取传统的 640 x480,低于 16 位色的显示,就将会不能 满足需要;因此非常有必要针对 日渐成熟和便宜的大尺寸高分辨率液晶进行
20、开发,以 应付市场的需求。本系 统也正是基于一个先进车床工控系统项目而开发,将为之实 现一个高分辨率的高彩色数的液晶驱动以实现人机交互时更加丰富直观的显示效 果和更加多样的控制设置。另外,在我国嵌入式领域中,传统的从掌握硬件处理器开始,由一个人 或一个团队 独立完成全部硬件底层驱动程序和上层应用程序的软件开发方法已经遇到了严峻的挑战,并且逐步成为嵌入式应用系统性能继续提升的瓶颈。嵌入式软件开发方法的变革势在必行,而采用中间件的方法就是变革的一个 很好途径。基于中间件的设计思想,使得应用软件的开发变得更加简单。首先,当系统硬件/操作系统平台改变时,只需改变中间适配层的几个参数,只要保持西南科技大
21、学硕士研究生学位论文第 5 页中间件层对应用层的接口定义不变,就可以直接将应用程序移植过去运行。 所 有代码只需编写一次就可在任何系统上运行,大大缩短了系统研制的周期,提高了开 发效率,同时还保证了系统的高伸缩性、易升级性和稳定性 在嵌入式系统中,中间件 可以是组成一个独立的结构;也可成为嵌入式操作系统的组成部分被嵌入;也可以完 全无缝的嵌入到最终应用程序中。本系统实现的嵌入式应用中间件要解决以下问题:中间件的接口设计问题;实现可移植性及易用性是中间件追求的目标,而中间件 的接口设计正是直接影响着两方面的关键所在。资源受限问题:一是要有对有限资源的完全控制权限,二是要设计优化的算法,严格控制资
22、源的使用。以内存为例,在考虑内存受限问题的时候,除了考虑内存的分 配算法能否最大限度地使用内存,减少碎片等问题之外,还要考虑内存泄漏的问题。功耗问题:嵌入式中问件是和硬件紧密联系的软件模块,优化嵌入式中 间件的功 耗,是嵌入式中问件设计时所需考虑的重要方面之一。设计低功耗的系统涉及到系统的每个组成部分和设计流程中的每一个环节,对功率问题进行了优化的编译器,动 态的功率控制|j6 动态的关闭某些设备或者降低设备供 电电压以达到降低功耗的效 果、 策略、总线上的数据编码(减少传递数据源的次数、技术、硬件设计工具以及 软件的算法,等等。对这几个问题,本文的研究作出了良好的尝试,所提出的解决,在今后的
23、嵌入式系 统和数控系统开发中,也具有实际的指导意义和借鉴价值。西南科技大学硕士研究生学位论文 第 6 页 2ARM 应用系统硬件方案2.1ARM 处理器简介ARM 最初是 Acorn RISC Machine 的简称,后改名为 Advaneed RISC Machineo 是由 Acorn 公司研发的。ARM 公司自 1990 年正式成立以来,在 32 位 RISC(ReducedInstruction Set ComputerCPU 开发领域不断取得突破,其结构己经从 V3 发展到 V6。由于 A 蹦公司自成立以来,一直以 IP (In tellige nee Pate nt 提供者的身份向
24、各大半导体 制造商出售知识产权,而自己从不介入芯片的生产销售,加上其设计的芯核具有功耗 低,成本低等 显著优点。因此获得众多的半导体厂家和整机厂商的大力支持,在 32位嵌入式应用领域.获得了巨大的成功,目前已经占有 70%以上的 32 位嵌入式 产品 市场。在低功耗,低成本的嵌入式应用领域确立了市场领导地位。现在设计、生产ARM 芯片的国际大公司已经超过 50 多家。到目前为止,ARM 微处理器及技术的应用几乎已经深入到各个领域(1 工业控制领域:作为 32 的 RISC 架构,基于 ARM 核的微控制器芯片不但占据了高端微 控制器市场的大部分市场份额,同时也逐渐向低端微控制 器应用领域扩展,
25、ARM 微 控制器的低功耗、高性价比,向传统的 8 位/16 位微控制器提出了挑战。(2 无线通讯领域:目前已有超过 85%的无线通讯设备采用了 ARM 技术,ARM以其高性能和低成本,在该领域的地位日益巩固(3 网络应用:随着宽带技术的推广,采用 ARM 技术的 ADSL 芯片正逐步获得竞 争优势。此外,ARM 在语音及视频处理上行了优化,并获得广泛支持也对 DSP 的应 用领域提出了挑战。(4 消费类电子产品:ARM 技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。(5 成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM 技术。手机中的 32 位 SIM 智能
26、卡也采用了 ARM 技术。ARM 处理器是基于 RISC 指令系统的一款处理器。ARM 处理器一般使用 3 级到 6 级左右的流水线结构,不同版本的 ARM 内核,其 流水线结构也不尽然相同 n “如图所示:西南科技大学硕士研究生学位论文第 7 页璜取译码执行AlutfrroMi 溉米线瑗取译玛执行存储嚣写圉八晌孵 D 啦嚣承缱臻般译爵执行存储曩AR 酗曜一 S t 永缝图 2-1ARIi 流水线结构图Fig.2 1Pipel ine of/tRill 际司 1.一 J 写回为兼容数据总线宽度为 16 位的应用系统,ARM 体系结构除了支持执行效 率很 高的32 位 ARM 指令集以外,同时支
27、持 16 位的 Thumb 指令集.Thumb 指令集是ARM 指令集的一个子集,允许指令编码为 16 位的长度。与等价的 32 位代码相比较,Thumb 指令集在保留 32 代码优势的同时,大大的节省了系统 的存储空间。ARit 指令集和 Thumb 指令集各有其优点,若对系统的性能有较高要求,应使用 32位的存储系统和 ARM 指令集,若对系统的成本及功耗有较高要求,则应使用 16 位的存储系统和 Thumb 指令集。当然,若两者结合使用,充分发挥其各自的优点,会 取得更好的效果。在寄存器分配上,ARM 处理器共有 37 个寄存器,被分为若干个组(BANK,这些 寄存器包括:31 令通用寄
28、存器,包括程序计数器(PC 指针,均为 32 位的寄存器;6 个状 态寄存器,用以标识 CPU 的工作状态及程序的运行状态,均为 32 位,目前只使用了其 中的一部分。同时,ARM 处理器又有 7 种不同的处理器模式,在每一种处理器模式下 均有组 相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器包括 15 个通用寄存器(R0ARI4、一至二个状态寄存器和程序计数器。在所有的寄存器中,有些 是在 7 种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处理 器模式下有不同的物理寄存器。西南科技大学硕士研究生学位论文第 8 页此外 ARM 体系结构还支持异常处理。ARM 体
29、系结构中的异常,与 8 位/10 位体 系结构的中断有很大的相似之处,但异常与中断的概念并不完全等同。 ARM 微处理 器支持 7 种运行模式,分别为:(1 用户模式(usr:A 跚处理器正常的程序执行状态(2 快速中断模式(fiq:用于高速数据传输或通道处理(3 外部中断模式(irq:用于通用的中断处理(4 管理模式(SvC:操作系统使用的保护模式(5 数据访问终止模式(abt:当数据或指令预取终止时进入该模式,可用于虚拟存 储及存储保护。(6 系统模式(sys:运行具有特权的操作系统任务.(7 未定义指令中止模式(und:当未定义的指令执行时进入该模式,可用于支持硬 件协处理器的软件仿真。
30、ARII 微处理器的运行模式可以通过软件改变,也可以通过外部中断或异 常处理 改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模 式下时,某些被 保护的系统资源是不能被访目的。除用户模式以外,其余的所有 6 种模式称之为非用户模式,或特权模式 (PrivilegedModes;其中除去用户模式和系统模式以外的5 种又称为异常模式(Exception Ilodes 常用于处理中断或异常,以及需要访问受保护的 系统资源等情况“玎“.2.2 系统硬件整体架构本系统将基于三星公司的 S3C2410B A 明处理器进行开发,开发平台的具 体硬 件架构如图 2-2 所示,围绕处理器核心,还有很多
31、以外围电路实现的功 能模块,下面将 一一介绍.此外硬件结构还采用核心板与用户板分开设计,两者以标准接口连接(比如笔记 本DDR 内存的 200PIN 卡座,有利于用户的升级或二次开发。用户在不需要更改核心部分的情况下只需修改用户板就能开发出自己的产品;或不改变用户板而换一块更高性能的核心板,以升级系统硬件.下图能良好的说 明系统的具体结构:西南科技大学硕士研究生学位论文第 9 页图 2-2 系统的硬件模块结构Fig.22Structure of Hardware ModuIes匦圈一巨圈图 2-3 系统硬件结构F;g.2-3Systemat i c Hardware Structure核心板是
32、 ARM9 处理器的最小系统,主要包含主处理器、RAM 和 ROtA 存储嚣,通过外部总线结构与用户板连接。从核心板的配置可以反映出控制器的性能。用户板充分利用了 AR 鹋处理器的功能。包含有 LCD 接口,支持各种 TFT西南科技大学硕士研究生学位论文 第 10 页LcD;触摸屏接口,可接四线电阻式触摸屏,可使用虚拟按钮或开关,以尽量减少硬件开销,降低成本;USB HOST/DEVICE 和 SD/MMc 接口,可以用 U 盘和 SD 卡这两 种都是比较便宜的存储介质来扩展代码的存储空间,并且 USB 接口可以作为视频接 口,方便远程监控;UART 提供标准的 232 电平、ADC 模数转换
33、接口、SPI 接口、外 部总线接口和外部中断接口,方便用户二次开发;网络接口必不可少,用以实现网络 化管理和加工。2.3S3C2410B 处理器本系统的实现,采用了基于 ARM920T 核心的來自 Samsung 三星公司的 2410B 处理器。该处理器在嵌入式设计领域非常流行,有众多的应用范例和资源。 3C2410B 处理器的最高频率高达 203Mhz,性能卓越,能有效地支持各 类应用。同 时因为是 SOC 设计,片内集成了众多的控制逻辑和资源,能够大幅度缩减外围硬件 的数量,并且工艺十分先进,因此功耗控制的很好,能广泛的用于 PDA,工业控制系统, 手机,家电,小型终端等场合AMBAAM
34、酗m dm图 2-453C2410H 处理器系统结构Fig.24 3G24108Processor Hardware Hierarchy西南科技大学硕士研究生学位论文第页 3C2410B 处理器核心具有以下的特点:(1 ARM902T 核心片内集成 16k/16k 的指令/数据缓存.(24 通道 DMA 支持,3 个 UART 控制器。(32 个 USB host、1 个 USB Device。(4 24 个外部中断,117bit 的 GPIO 口.(5 SD/MMC 控制器,NAND Flash SM 卡接口。(6 片上时钟发生器,MPLL 和 UPLL。(78 通道复用型 ADC 集成,触
35、摸屏接日。(8 功耗控制:正常,慢速,空闲以及关闭模式。(98 个内存 Bank 支持,支持从 NOR 和 NAND Flash 启动。(10LCD 控制器(最大 4K 色 STN 和 256K 色 TFT 屏幕和一个专用 DMA 在上述 特点里,和本系统关系最为密切的就是最后所提的LCD 控制器。3C2410B 所集成的 LCD 控制器包含的控制逻辑,能够完成系统显存到外部 LCD 驱动的显示数据传 输。此片内LCD控制器支持在单色的LCD显示器上的模式有:单色,2-bit色(4级灰 度,4-bit色(16 级灰度。 在 STN 技术的 LCD 显示器上,片内的 LCD 控制器还能支持 8
36、一 bit 色(256级彩色和 12-bit 色(4096 级彩色,采用的是时基抖动算法和帧率控制 方法来实现。当采用 TFT 类型的彩色液晶面板,并在调色板模式下时。内置的 LCD 控制器 还能支持卜 bit 色,2-bit 色,4-bit 色和 8-bit 色。在非调色板真彩模 式下,还支持更高 的 16 一 bit色和 24-bit 色.而Y3C2410B 的内置 LCD 控制器完全是可编程的,可以通过设置来支持不 同分 辨率的 LCD 显示屏,数据位宽,接口时序,刷新频率等等。可以说可控 性、可扩展性 和适应性都非常的出色.2.4 系统 FLASH 存储模块首先是用于系统软件存储的非易
37、失性存储器的选择,这里Y3C2410B 可以支持EEPROM,Flash 等选择,考虑到灵活性和存储成本,最终选取较为流行的 NAND Flash 存储方案。后文将要介绍的重要的软件,如 bootloader,Linux 操作系统以及其他需要 永久保存的应用软件,就将存放在 Flash 内。Flash 存储器是一种可在系统(In-System 进行电擦写,掉电后信息不丢失的存储 器。它具有低功耗、大容量、擦写速度快、可整片或分扇区在系西南科技大学硕士研究生学位论文 第 12 页统编程(烧写、擦除等特点,并且可由内部嵌入的算法完成对芯片的操作,因而 在各种嵌入式系统中得到了广泛的应用。作为一种非
38、易失性存储器,Flash 在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。常用的 Flash 为 8 位或 16 位的数据宽度,编程电压 为单 3.3V。 主要的生产厂商为 ATMEL、AMD、HYUNDAI、Samsung 等,他们生产的同型器件一般具有相同的电 气特性和封装形式,可通用 m,。本系统的硬件平台搭建时,芯片选型定位在 Samsung 三星公司的 5129 bitNAND Flash,折合 64M 容量,型号是 K9Ft208UOM YCBO。该芯片 NAND Flash 内 部还有 2048K x 8bit 的富裕容量。 该芯片功耗低,速度快,能
39、在 200us 的时间完成对 528byte的一个页进行的编程(写入操作,针对一个 16k byte 的块进行一次删除操作的 典型时间为2ms。页内的数据能以 lbyte/5Ons 的速度进行读取操作。该芯片的具体 特色如下;(1 2.73.6 伏的工作电压。片上共(64M+2,048Kx 8hit 容量(2 页编程操作:(512+16Byte,块擦除操作:(16K+512Byte(3 页面内随机访问时间:12us(最坏,线性访问时间:50ns(最优(4 指令/地址/数据 10 口的复用,缩减了引脚数(5 硬件的数据保护功能(6 有指令寄存器操作(7 能同时支持 4 路的页/块编程/擦除操作(
40、8 智能 Copy Back 操作支持芯片的引脚定义如下图所示:引脚定义5 咿 1 名动能苗洼l,00F07数糊cLE 指锁存使能脏数据锁存使辘CE片选使稚谀取使能WE 与八使髓wP 鼽倪护舳读职/忙犄出M电源V 鼬地HC 来连接图 2-5K9F1208UOIg Flash 芯片引脚定义 “Fig.2-5KgFI208UON Flash Chip Pin Oeser lotiOII西南科技大学硕士研究生学位论文 第 13 页 2.5 系统 SDRAM 存储模块其次是系统运行时必要的存储支持,即 SDRAM 子存储系统。SDRAM 在系统 中主要用作程序的运行空问,数据及堆栈区。当系统启动时,C
41、PU 首先从复位地址 OxO 处读取启动代码,在完成系统的初始化后,程序代码一般应调 入 SDRAM 中运行, 以提高系统的运行速度,同时,系统及用户堆栈、运行数 据也都放在 SDRAM 中。与 Flash 不同韵是,SDRAM 不具有掉电保持数据的特性,但其存取速度 大大高于 Flash 存储器,因此采用 SDRAM 作为运行时的存储,能最大限度的提高系统性 能。而SDRAM 的存储单元可以理解为一个电容,总是倾向于放电,因此为避免数据 丢失必、须定时刷新(充电。所以要在系统中使用 SDRAM,就要求微处理器具有刷新 控制逻辑,或是在系统中另外加入刷新控制逻辑电 路。目前常用的 SDRAW
42、为 8 位/16 位的数据宽度,工作电压一般为 3.3V。主要的 生产厂商为 Hynix、Winbond 等。他们生产的同型器件一般具有相同的电气特性和 封装形式,可通用。a 3C4510B 及其他一些 ARM 芯片在片内具有独立的 SDRAM 刷新控制逻 辑, 可方便的与 SDRAM 接口 .因此系统针对 3C2410B 的特点,针对高分辨 率 LCD 驱 动要占用较多显存的特点,采用的是 Hynix 韩国现代的 256lllbit 容量,型号为HY57V561620CT-H 类型的芯片。选用一共 2 片,组成共计 64M x 8bit 的动态存储系 统。该 SDRAM 芯片采用 54 针脚
43、的 TSOP II 封装,典型的工作频率为 133Mhz,具有 如下特点:(13.3 3 伏的工作电压(2 所有的针脚都是 LVTTL 界面兼容的(3 输入输出都是在系统时钟的上升沿触发(4 内部由 4 个 bank 组成,每个 bank 是 4M x 16bit,自动刷新(5 每 64ms 内有 8192 个刷新周期(6 可编程的突发长度和突发类型:1/21418/页线性突发或 1/2/4/8 交错突发(7 可编程的 CAS 延迟周期,可为 2 或者 3 时钟周期该芯片的引脚定义和系统的存储模块电路原理图与连接图如下。西南科技大学硕士研究生学位论文第 14 页 3e.4rmTSOPII 舡5
44、O 洲 pmpl 时 l4a引脚定义时竹时忡使麓礴片连BIA地址戡蛾錾群秘/牲凸 M 数据箱,胄A翱数据娃电溽/地1据犄出电薄,建未稀图 2-6HY57V561620CT H SDRAM 芯片引脚定义 Fig.2-6HY57Y561620CT-H SDRAII Chip Pin Description围 2 7 存储系统的电路原理图Fig.2-7Storage System Ci rGuit西南科技大学硕士研究生学位论文 第 15 页根据硬件连线设计,本开发平台的地址映射采取如下的设计NAND:0 x000000000 x04000000,共计 64Mb。SDRAM:0 x300000000
45、x34000000,共计 64Mb。2.6 系统串口通讯接口模块本系统所要实现的完整硬件开发平台,串行通讯 RS-232 接口必不可少。在系 统的软件安装和调试阶段,RS 232 接口是非常重要的上位机(PC开发版(ARM 嵌入式系统通讯接口。RS=232 被定义为一种低速率串行通信中增加通信距离的单 端标准。RS-232 遵循 RS 一 232 一 C 标准,美国电子工业协 会(Electronic IndustriesAssociaten,EIA 把 RS 一 232 一 C 定义为:在数据终端设备和数据通讯设备之间使 用串行二进制数据交换的接口 ” RS32-C 标准是一种硬件协议,用于
46、连接 DTE(DataTerminal Equipment,数据终端设备和 DCE(Data Communications Equipment 数据通 信设备两种设备。RS-232 一 C 标准采用的接口是 9 芯或 25 芯的 D 型插头,要完成最基 本的串行 通信功能,实际上只需要 RXD、TXD 和 GND 即可,但由于 Rs 一 232 一 C 标准所定 义的高、低电平信号与Y3C4510B 系统的 LVTTL 电路所定义的高、 低电平信号完 全不同丄 VTTL 的标准逻辑“ 1 对应 2V3,3V 电平,标准逻辑“0 对应 0V0.4V 电平, 而 RS 一232-C 标准采用负逻辑
47、方式,标准逻辑“I 对应一 5V一 15v 电平,标准逻辑“O 寸应+5y、+15V 电平,显然两者间要进行通信必须经过信号电平的转换,目前 常使用的电平转换电路为 MAX232EW。系统设计了一个 9 芯的 D 型插头,选择Y3E3410B 的 UARTO。西南科技大学硕士研究生学位论文 第 16 页帅图 2-8 串行通讯模块Fig.28SeriaI Communi cati on Iodule2.7 系统网络通讯模块另外就是网络通讯的模块,网络部分选用的是 Circus Logic 公司的一块 支持全 双工 IOM Ethernet 的 CS8900A 芯片。该芯片全面支持 IEEE 80
48、2.3 标准,内含片上 内存,收发过滤器,完整的标准 ISA 接口,为 100 针 TQFP 封装。该芯片对电源的要求 是 3v,最大工作电流也不过 55mA,能工作在 DMA,I/O, Memory 方式,传输和接收的 很多特性都是可编程改变的。该芯片对于 lOBaseT 规格的接口,能自动识别端口极性,自动校正.同时还支 持lOBase 2,lOBase5 以及 10Base- P。芯片独有的 Packet Page 体系结构和 4Kb 的RAM 能够提升其性能,主要是能良好的适应网络的传输模式,最大限度的利用有 用的资源。该芯片的结构 一以及网络通讯模块的原理图如 下:西南科技大学硕士研
49、究生学位论文 第 17 页图 2-90S8900A 芯片结构图Fig.2-90S8900A OhiP Architeoture图 2-10 网络通讯模块Fjg.2-10Network Commu nication ModuIe西南科技大学硕士研究生学位论文 第 18 页 2.8 本章小结本章详细介绍了本应用系统的硬件系统。包括分析目前流行的硬件器件特性,完成了硬件选型和外围电路搭配;并介绍了各个功能模块的具体组成 和电路原理,完 成了硬件系统的组建。西南科技大学硕士研究生学位论文 第 19 页 3ARM 应用系统软件方案3.1 基于 LintlX 的 ARM 应用系统嵌入式 LilltlX 系
50、统从软件的角度看通常可以分为四个层次:引导加载程 序、 Linux内核、文件系统、用户应用程序。从当前流行的开发形式来看,ARM 和 LiFlUX 相结合的开发占据了主流。考虑到数控系统的开放性问题,从软件开发的角度来看,应该能够根据需要综合 利用开发商提供的程序包软件和软件单元,方便地构筑相应的系统。 数控系统的开 放程度可分为三个层次:(1 应用层次上的开放:用户可以直接或通过网络联接运行各种应用软 件,包括各 种编程软件、工厂管理软件、通信软件、多媒体软件等;(2用户操作界面的开放:使用户接口有其自己的操作特点,更加友好,并具备特 殊的系统诊断功能等;一(3 内核的开放:这是最深层次的开
51、放。内核提供已定义的接口,用户把自己用高级程序设计语言(C,C+开发的程序连接到这些接口。这种内核的开放,不会使系统受到干预。这样,最终用户就可以把属于他们自己的知 识经验、专用工艺集成到应 用系统中,形成他们定制的、完全适合独特应用的特定系统。为实现系统的开放性,在对系统作功能层次结构分析的基础上,选用 Linux 构建 系统软件平台,开发 Linux 下的 LCD 高清驱动程序和图形中间件 接口 API,使系统具 有可重组性,可移植性和可扩展性,便于高效优质地满足用户和厂商的多样化、多层 次的要求,实现可定制的数控应用支撑系统。满足上层控制软件的开发需求。3.1.1LiflUX 操作系统简
52、介Linux 是一个类似于 Unix 的操作系统。它起源于芬兰一个名为Linus Torvalds的业余爱好,但是现在已经是最为流行的一款开放源代码的操作系统。Linux 系统不仅能够运行于 PC 平台,还在嵌入式系统方面大放光芒,在各种嵌入式 Linux OS 迅 速发展的状况下 丄 inux OS 逐渐形成了可与 Windows CE 等 EOS 进行抗衡的局面。 目前正在开发的嵌入式系统中,49%的项目选择 Linux 作为嵌入式操作系统。Linux 现已成为嵌入式操作的理想选择。典型的嵌入式 Linux 有如下几种:西南科技大学硕士研究生学位论文第 20 页(I RT Li nuxRT
53、Linux 是在新墨西哥矿业及科技学院计算机系由Victor Yodaiken 和Michael Barabanov 开发出来的。RT Linux 就是 Real Time Linux 的缩写,RTLinux 建立在 Linux 内核基础上,主要用于对实时要求比较严的场合。(2 uCI inuxI”?uCLinux 是一个完全符合 GNU/GPL 公约的操作系统,完全开放代码,现在由Lineo 公司支持维护。uCLinux 主要是针对目标处理器没有存储管理单 元 MMU(MemoryManagement Unit 的嵌入式系统而设计的。(3 Embedix”1Embedix 是一种由 Lu n
54、eo 公司推出的嵌入式 Lin ux 软件解决方案。在网 站http:/ 上可以免费获得源码。Embedix 是基于 PowerPC 和 x86 平台 开发的,它提供了 Linux 的强大功能,还可以对需要功能进行剪裁,对嵌入式设备进行 支持。概括说来,将 Linux 应用于嵌入式系统的开发有如下一些优点:(1 精简的内核,性能高、稳定 多任务.(2 适用于不同的 CPU 支持多种体系结构,如 X86、ARM、MIPS、ALPHA、 SPARC等。(3 能够提供完善的嵌入式 GUI 以及嵌入式 X-Windows。内核的完全开放,使得可以自己设计和开发出真正的硬实时系统;对于软实时 系统,在
55、Linux 中也容易得到实现。(5Linux 自身具备一整套工具链,容易自行建立嵌入式系统的开发环 境和交叉运 行环境,并且可以跨越在嵌入式系统开发中仿真工具(ICE 的障碍。(6 用户可定制,可提供图形化的定制和配置工具。(7 常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富(8 针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。(9 完善的中文支持,强大的技术支持,完整的文档。(iO 强大的网络支持,使得可以利用 Linux 的网络协议栈将其开发成 为嵌入式的 TCP/IP网络协议栈。综上所述,目前成熟的嵌入式开发环境,无论从成本上考虑,开发的难 易度上考虑, 还是从已有的
56、软件资源、硬件厂商的支持程度上来看,可定制的 Linux 操作系统都是嵌入式开发的首选平台并且随着网上开发团队的壮 大,基于 Linux 的开发将越来 越多越来越方便“,西南科技大学硕士研究生学位论文第 21 页 3.2BootLoader 的修改与移植Boot Loader 是在操作系统内核运行之前运行的一段代码 n”这段代码主要需 要完成的工作包括:正确的初始化处理器运行模式(包括工作模式,MMU 和 Cache 的 状态,设置中断向量表,建立内存空问的映射图等等。从而 将系统的软硬件环境带到 一个合适的状态,以便最终从 ROM 空间或者 FLASH 空间甚至是网络载入操作系统 的内核代码
57、一般说来,Boot Loader 并没有一个通用的版本可以适应所有的开发环境,BootLoader 本身的许多代码都是具体硬件平台相关的。尽管如此,Boot Loader 仍然还是有很多共性,对于特定的任何嵌入式硬件环境,都能够抽象出这些通用概念,用以指导 特定开发平台的 Boot Loader 的设计和实现。(1 每种不同的 CPU 体系结构都有不 同的 BootLoader。有些 Boot Loader 也支持多种体系结构 CPU。除了依赖于 CPU 的体系结构外,BootLoader 实际上也依赖于具体的嵌入式板级设备的配置。(2 系统加电或复位后,3C2410B 会从地址 0 x000
58、00000 读取它的第一 条指 令。而嵌入式系统通常都有某种类型的固态存储设备(比如:ROM,EEPROM 或LASH 等被映射到这个预先安排的地址上。因此在系统加电后,CPU 将首先执行Boot Loader 程序。下图是常见的固态存储映像分布图,能够详细而清楚的说明 Boot Loader所在的位置:引导参数I .内核根文件系统引导加载程序图 3-1 f郴 h 内存储空问分配示意圉Fig.3-1Flash Storage locatjng Figute(3 控制 Boot Loader 的设备或机制:主机和目标机之间一般通过串口 建立连 接,BootLoader 软件在执行时通常会通过串口
59、来进行 i/o,比如:输出打印信息到串口,从串口读取用户控制字符等。BE nable loadable module support幸Ker nel module loader表示对模块的支持:使能对模块的支持,可以选择需要的内容:让内核在启动时 有自己装入必须模块的能力。System Type 一 SMDK 2410Gen eral setup 一 降Network ing support*System v IPC丰Sysctl support(ELFKernel core(/proc/kcoreformatKemel support for ELF bin ariesDefault ker
60、nel comma nd stri ng:noinitrd root=/dev/mtdblock/3console=ttySO init=/1inuxrc这里将缺省的传递给内核的命令行设为以上格式,也便于同 bootloader 配合,后面将继续详细说明。Block devices-块设备设置:这里设置不支持 initrdNetworking options 一Packet socketUnj x doma in socket西南科技大学硕士研究生学位论文第 31 页幸TCP/IP networki ng毒IP:Kernel level autoc on figurati on【IP:BOOT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届河北省高三5月质量检测历史试题(含答案)
- 数字人肢体动作捕捉技师考试试卷及答案
- 房屋租赁委托协议书
- 商业车位转让协议书范本
- 最高额抵押担保借款协议书
- 女主和总裁协议书婚姻文
- 米东区离婚协议书律师顾问
- 营口吊车租赁协议书
- 二哥给父亲签协议书
- 通信型伺服有几种协议书
- GB/T 1040.1-2025塑料拉伸性能的测定第1部分:总则
- 分泌性中耳炎术后护理
- 新22J01 工程做法图集
- 人教A版高中数学必修第二册8.6.3 平面与平面垂直(一)【课件】
- 《广西建设工程消防设计审查验收常见问题汇编》
- 2024秋新统编版道法7年级上册教学课件 12.2 正确对待顺境和逆境
- T-GXAS 395-2022 蒜头果栽培技术规程
- 失读症的康复治疗
- 公司一级安全技术交底
- 2024秋期国家开放大学本科《中国当代文学专题》一平台在线形考(形考任务一至六)试题及答案
- 建筑与市政工程抗震规范培训
评论
0/150
提交评论