(通信与信息系统专业论文)基于lpc2478的嵌入式μclinux系统构建.pdf_第1页
(通信与信息系统专业论文)基于lpc2478的嵌入式μclinux系统构建.pdf_第2页
(通信与信息系统专业论文)基于lpc2478的嵌入式μclinux系统构建.pdf_第3页
(通信与信息系统专业论文)基于lpc2478的嵌入式μclinux系统构建.pdf_第4页
(通信与信息系统专业论文)基于lpc2478的嵌入式μclinux系统构建.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(通信与信息系统专业论文)基于lpc2478的嵌入式μclinux系统构建.pdf.pdf 免费下载

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

文档简介

8o 。 j 苏州大学学位论文使用授权声明 y 1 7 3 2 5 8 “9 本人完全了解苏州大学关于收集、保存和使用学位论文的规定, 即:学位论文著作权归属苏州大学。本学位论文电子文档的内容和纸 质论文的内容相一致。苏州大学有权向国家图书馆、中国社科院文献 信息情报中心、中国科学技术信息研究所( 含万方数据电子出版社) 、 中国学术期刊( 光盘版) 电子杂志社送交本学位论文的复印件和电子 文档,允许论文被查阅和借阅,可以采用影印、缩印或其他复制手段 保存和汇编学位论文,可以将学位论文的全部或部分内容编入有关数 据库进行检索。 涉密论文口 本学位论文属 在年一月解密后适用本规定。 非涉密论文口 论文作者签名: 物壶 1 3 导师签名;组垦日 基于l p c 2 4 7 8 的嵌入式i j c l i n u x 系统构建 中文摘要 基于l p c 2 4 7 8 的嵌入式i t c l i n u x 系统构建 中文摘要 随着计算机技术、半导体技术和微电子技术的发展,在汽车仪表领域,嵌入式系 统引入了网络通信、智能控制等先进技术,形成了集通信、显示、控制等功能于一体 的全数字智能汽车仪表系统。考虑到汽车仪表系统功耗低、成本低、实时性高等要求, 本论文将l 上c l i n u x 操作系统与处理器l p c 2 4 7 8 相结合,构建了应用在汽车仪表领域的 嵌入式核心控制平台。 作为应用在微控制领域的g c l i n u x 操作系统,具有源代码开放、可移植性好、网 络功能强大等特点,并且随着版本的不断升级和改进,其实时性性能方面不断提升, 目前已被移植到大多数3 2 位处理器中。恩智浦公司生产的3 2 位a r m 处理器 l p c 2 4 7 8 ,具有功耗低、性能高、工作温度范围宽等特点。由于国内对处理器l p c 2 4 7 8 的嵌入式g c l i n u x 系统的开发讨论较少,因此本文讨论的基于l p c 2 4 7 8 的嵌入式 g c l i n u x 系统核心平台构建,除了具有一定的工程应用价值,对其它平台下的嵌入式 系统开发工作也具有一定的实践指导意义。 本论文从应用角度出发,首先讲述了g c l i n u x 操作系统的特点,以及g c l i n u x 在 l p c 系列芯片上的应用现状。在此基础上,结合l p c 2 4 7 8 的硬件特点,给出了硬件 平台的总体设计方案,实现了外围设备的控制,并讨论了引导程序u b o o t 的移植, 操作系统 t c l i n u x 内核的裁剪、修改和移植,研究了l 上c l i n u x 系统下设备驱动程序和 应用程序开发的方法。最后,对移植的u b o o t 和g c l i n u x 进行测试,结果表明,该 系统运行基本稳定。 关键字:g c l i n u x 、u b o o t 、l p c 2 4 7 8 、移植 作 者: 指导老师: 杨涛 施国梁 a b s t r a c t b u i l d i n ge m b e d d e dg c l i n u xs y s t e mb a s e do ni p c 2 4 7 8 b u i l d i n ge m b e d e dl t t c l i n u xs y s t e mo nl p c 2 4 7 8 a b s t r a c t w i t ht h ed e v e l o p m e n to fc o m p u t e rt e c h n o l o g y , s e m i c o n d u c t o rt e c h n o l o g ya n dm i c r o - e l e c t r o n i c st e c h n o l o g y , e m b e d e ds y s t e ma p p l i e di na u t o m o t i v ed a s h b o a r d si n t r o d u c e sm o r e a d v a n c e dt e c h n o l o g i e s ,j u s ta sn e t w o r kc o m m u n i c a t i o n ,i n t e l l i g e n tc o n t r 0 1 t h e r e f o r e , f o r m saf u l ld i g i t a li n t e l l i g e n td a s h b o a r d sw h i c hc o m b i n e sw i t hm e a s u r e m e n t ,c o m m u n i c - a t i o n s ,d i s p l a ya n dc o n t r o lf u n c t i o n s a c c o r d i n gt ot h er e q u i r e m e n t so fl o wp o w e r c o n s u m p t i o n ,l o wc o s t ,h i g hp e r f o r m a n c e ,t h i st h e s i sw i l lc o m b i n e sp c l i n u xo p e r a t i n g s y s t e mw i mm i c r o p r o c e s s o rl p c 2 4 7 8t oi m p l e m e n ta ne m b e d d e dc o r ec o n t r o lp l a t f o r mf o r a u t o m o t i v ed a s h b o a r d s i _ t c l i n u xo p e r a t i n gs y s t e mr u n n i n go nm i c r o c o n t r o l l e r , h a sm a n ya d v a n t a g e s ,s u c ha s i t so p e ns o u r c e ,g o o dp o r t a b i l i t y , p o w e rn e t w o r kf u n c t i o n f u r t h e r m o r e ,a st h ev e r s i o n s u p g r a d i n ga n di m p r o v e m e n to fr e a l t i m ep e r f o r m a n c e ,i _ t c l i n u xh a sb e e np o r t e dt om o s t 3 2 一b i tp r o c e s s o r s l p c 2 4 7 8f r o mn x pc o r p o r a t i o ni sa l l3 2 一b i ta r m p r o c e s s o r 、析t l ll o w p o w e rc o n s u m p t i o n ,h i g hp e r f o r m a n c e ,w i d ew o r k i n gt e m p e r a t u r er a n g e d u et ol i t t l e d i s c u s s i o n sa b o u te m b e d d e dp c l i n u xs y s t e ma b o u tl p c 2 4 7 8i nd o m e s t i c ,t h i sp a p e rh a s c e r t a i np r a c t i c a ls i g n i f i c a n c e sf o rt h eo t h e re m b e d d e ds y s t e m si na d d i t i o nt ot h ev a l u eo f e n g i n e e r i n ga p p l i c a t i o n f r o mt h ea p p l i e da n g l e ,t h i sp a p e rf i r s t ,s t u d y st h ef e a t u r e so fg c l i n u xo p e r a t i n g s y s t e ma sw e l la si t sa p p l i c a t i o no nl p cc h i p s s e c o n d ,a c c o r d i n gt ol p c 2 4 7 8h a r d w a r e f e a t u r e s ,s t u d i e st h eo v e r a l ld e s i g ns c h e m ed i s i g no fh a r d w a r ep l a t f o r ma n dh o wt oc o n t r o l t h ep e r i p h e r a ld e v i c e s t h i r d ,m o r ea t t e n t i o na r ep a i dt ot h ep o r t i n go fu b o o t ,t h ec u t t i n g a n dm o d i f i c a t i o no f t c l i n u xo p e r a t i o ns y s t e ma n dt h em e t h o d so fd e v e l o p p i n gd e v i c e d r i v e r sa n da p p l i c a t i o np r o g r a mu n d e rg c l i n u x f i n a l l y , t h er e s u l t sp r o v e st h a tu b o o ta n d g c l i n u xa r ea b l et or u ns t a b l yo nt h i sp l a t f o r mb yt e s t i n g k e y w o r d s :u b o o t ;1 t c l i n u x ;l p c 2 4 7 8 ;p o r t i n g h w r i t t e n b y :y a n g t a o s u p e r v i s e db y :s h i g u o l i a n g 目录 第一章绪论1 1 1 课题研究的背景1 1 1 1l a c l i n u x 操作系统概述1 1 1 2g c l i n u x 在l p c 系列芯片上的应用现状2 1 2 本文研究的主要内容与意义3 1 3 本文章节安排4 第二章系统的硬件平台设计一5 2 1 微处理器选型5 2 2 系统硬件平台搭建7 2 3 系统功能模块介绍8 2 3 1 主芯片模块8 2 3 2 串口功能模块1 0 2 3 3 外部存储器控制模块l o 2 3 4s d r a m 模块1l 2 3 5n a n d f l a s h 的模块1 6 2 4 本章小结1 9 第三章嵌入式l a c l i n u x 系统的软件设计2 0 3 1 嵌入式实时操作系统选择2 0 3 2g c l i n u x 与传统l i n u x 的比较。2 1 3 3 嵌入式g c l i n u x 系统的软件开发流程。2 2 3 4b o o t l o d e r 的设计2 3 3 4 1u b o o t 工程介绍2 4 3 4 2u b o o t 的文件结构2 4 3 4 3u b o o t 的编译规则2 6 3 4 4u b o o t 的启动流程分析2 7 3 4 5u b o o t 移植实现2 9 3 5i _ t c l i n u x 移植3 4 3 5 1g c l i n u x 的文件结构3 4 3 5 2g c l i n u x 的启动过程3 6 3 5 3g c l i n u x 的移植实现3 8 3 6 本章小结4 2 第四章设备驱动程序和应用程序开发4 3 4 1g c l i n u x 下设备驱动开发4 3 4 1 1g c l i n u x 操作系统的设备管理4 3 4 1 2g c l i n u x 下设备驱动程序的常用接1 :3 函数4 4 4 2g c l i n u x 下应用程序与驱动程序的通信4 4 4 3l e d 和串口收发程序开发4 5 4 4 本章小结4 7 第五章测试结果与分析4 8 5 1 调试环境搭建4 8 5 2 结果测试与分析4 9 5 3 本章小结一5 l 第六章总结与展望5 2 6 1 总结5 2 6 2 展望5 2 参考文献5 4 论文发表5 7 致谢5 8 基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 第一章绪论 1 1 课题研究的背景 第一章绪论 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于 应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统【1 1 。在设 计嵌入式系统时,需要尽量去除硬件和软件上的冗余,争取以较少的资源实现更高的 性能。因此,与通用的计算机系统相比,嵌入式系统具有以下显著的特点【2 】: 1 ) 专用性强。 2 ) 资源相对较少。 3 ) 功耗低、体积小、集成度高、成本低。 4 ) 使用实时操作系统。 现代汽车仪表系统作为应用在汽车领域的嵌入式系统,也具有上面的特点。相比 之前的机械式仪表,由于网络通信、智能控制等先进技术的进一步融入,汽车仪表系 统目前已经是集传感器测量、网络通信、控制单元、终端显示等功能与一体。具体来 讲,汽车仪表系统需要显示的信息越来越复杂,通信任务也越来越多,实时性要求也 越来越高。嵌入式核心控制平台的构建作为汽车仪表系统的核心,对汽车仪表系统的 性能起着至关重要的作用。因此在设计时,除了需要引入嵌入式实时操作系统,为用 户提供良好的人机交互方式和应用程序接口,提高汽车仪表系统的实时性和软件的运 行效率。另外,选择的微处理器处理速度要快、存储容量要大、i o 功能要强、功能 损耗要低及实时响应要快,从而从软件和硬件上来保证汽车仪表系统的成本低、实时 性高、功耗低、体积小等要求。 本课题就是在这样的背景下,根据现代汽车仪表系统的要求,选择3 2 位a r m 7 处理器和嵌入式实时操作系统i x c l i n u x 的组合,期望设计出应用在汽车仪表领域的嵌 入式核心控制平台。 1 1 1g c l i n u x 操作系统概述 g c l i n u x 由l i n u x 衍生而来,是一个符合g n u g p l 公约的开放源码项目【2 】,应用 第一章绪论 基于l p c 2 4 7 8 的嵌入式p c l i n u x 系统构建 在无内存管理单元的微处理器上的嵌入式l i n u x 操作系统版本。自从1 9 9 8 年正式发 布,发展到现在,已经得到广泛的认可和完善。p c l i n u x 操作系统改写和裁剪了l i n u x 内核的大量代码,采用了一种平板式的内存存储模型来去除对m m u 的依赖,并开发 了运用于p c l i n u x 的c 函数库- l l c l i b c 。它的内核要比l i n u x 的内核小的多,但这不 影响它延续l i n u x 操作系统稳定性好、网络功能强大、文件系统支持出色和开源等良 好的特性。总结起来,操作系统p c l i n u x 的有如下主要特点【2 】: 1 ) 通用的l i n u x a p i ; 2 ) g c l i n u xk e m e l 的大小小于51 2 k b ; 3 ) 完整的t c p i p 协议堆栈; 4 ) 支持大量其他的网络协议; 5 ) 支持n f s 、e x t 2 、r o m f s 、j f f s 、f a t l 6 3 2 、m s d o s 各种文件系统。 到目前,g c l i n u x 已经被成功的移植到多种3 2 位的微处理器上,比如,m o t o r o l a 公司的m c 6 8 系列、c o l d f i r e 系列,i n t e l 的s t r o n g a r m 、x s c a r e 系列,a t m e l 的a t 9 1 系列、s a m s u n g 的$ 3 c 系列等。在嵌入式l i n u x 领域,尤其是无内存管理单元的微 处理器上,p c l i n u x 的应用非常广泛。 1 1 2p c l i n u x 在l p c 系列芯片上的应用现状 在国内外,对于l p c 系列微处理器为核心的嵌入式p c l i n u x 系统有过探讨。国际 上,美国的e m b e d d e da r t i s t sa b 是一家专门提供基于l p c 系列微处理器的产品方案 设计的公司,p c l i n u xb o a r d s 是它们之前开发的以l p c 系列为核心的三大系列开发板 之一。这款目标板以l p c 2 2 9 4 微控制器为核心,以g c l i n u x 2 6 操作系统为基础。现 在推出的以l p c 2 4 x x 系列为核心的开发板,在硬件上添加了更多的外设接口,软件 上,继续支持p c l i n u x 操作系统。 国内,广州周立功公司也推出了许多l p c 系列的实验开发板,最典型的就是 s m a r t a r m 2 2 0 0 实验教学平台,它以l p c 2 2 0 0 微处理器为核心,外部集成了多种接 口,是一个专门针对嵌入式g c l i n u x 系统教学的试验开发平台。周立功公司推出的 s m a t r t a r m 2 2 0 0 的出现,极大的推动了国内l p c 系列处理器的应用,从一些网站和 论坛上可以看到,国内一些公司现在也在极力投入到基于l p c 其它系列处理器的应 2 基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 第一章绪论 用的研究。 1 2 本文研究的主要内容与意义 本论文研究的主要内容有: 1 ) 对系统功能进行分析,构建嵌入式核心控制平台的硬件平台。 2 ) 研究微处理器l p c 2 4 7 8 的外围设备接口,实现主要包括l p c 2 4 7 8 对调试串 口、外扩存储器s d r a m 、n a n d f l a s h 的硬件和软件控制。 3 ) 在宿主机上搭建嵌入式g c l i n u x 系统的软件开发平台,包括虚拟机上建立 l i n u x 平台、搭建交叉编译环境以及系统调试环境。 4 ) 通用引导程序u b o o t 的文件结构、编译规则、运行机理,修改部分的源代 码,实现了u b o o t 在目标板上的移植。 5 ) l a c l i n u x 操作系统文件结构、启动过程,修改部分内核源代码,实现g c l i n u x 在目标板上的移植。 6 ) u - b o o t 和l a c l i n u x 的源代码的调试,实现目标上u b o o t 引导p c l i n u x 操作系 统。 7 ) 根据g c l i n u x 系统下的设备管理,研究g c l i n u x 系统下设备驱动程序和应用 程序开发的方法。 本论文研究的意义: 本课题在总结前人经验的基础上,选择基于a r m 7 内核的3 2 位处理器l p c 2 4 7 8 作为核心芯片,i - t c l i n u x 操作系统作为嵌入式实时操作系统,这种设计方案,实现了 很大程度上以很少的资源实现更大的性能。由于国内对基于处理器l p c 2 4 7 8 的嵌入 式g c l i n u x 系统的讨论较少,因此本文讨论的基于l p c 2 4 7 8 的嵌入式g c l i n u x 系统核 心平台构建,除了具有一定的工程应用价值,对其它平台下的嵌入式g c l i n u x 系统开 发工作也具有一定的实践指导意义。 第一章绪论基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 1 3 本文章节安排 本论文由六个章节构成,分别是: 第一章绪论,阐述本课题的研究背景,介绍g c l i n u x 操作系统,讲述扯c l i n u x 操 作系统在l p c 2 x x x 系列上的应用现状以及本文研究的主要内容与意义。 第二章系统的硬件平台设计,根据系统功能搭建系统硬件平台,讲述了处理器 的选型,系统各模块的功能。通过研究微控制器l p c 2 4 7 8 对外围设备的控制,实现 调试串口、异步动态存储器s d r a m 、静态存储器n a n d f l a s h 的硬件和软件的控制。 第三章嵌入式l l c l i n u x 系统的软件设计,根据系统的硬件平台和系统功能的要 求,选择u c l i n u x 操作系统作为本课题的嵌入式实时操作系统,并提出基于l p c 2 4 7 8 微控制器下的嵌入式g c l i n u x 系统软件开发流程和模式,根据引导程序u b o o t 的文 件结构、编译规则、启动流程,完成移植,根据g c l i n u x 的文件结构、启动流程、完 成移植。 第四章设备驱动程序和应用程序开发,通过对g c l i n u x 系统的设备管理的研究, 总结了g c l i n u x 系统下设备驱动程序开发的方法,并根据l p c 2 4 7 8 的硬件结构,进一 步给出了对应设备程序下应用程序开发的包含工作。通过示例程序给出了i t c l i n u x 下 驱动程序开发和应用程序开发的模式。 第五章测试结果与分析,在宿主机上,搭建嵌入式l i n u x 的系统调试平台,完 成u b o o t 和l a c l i n u x 的源码级调试,对结果进行测试和分析。 第六章总结与展望,总结本论文的工作,展望后续的工作。 4 基于l p c 2 4 7 8 的嵌入式i t c l i n u x 系统构建第二章系统硬件平台设计 2 1 微处理器选型 第二章系统的硬件平台设计 现代嵌入式系统都是由微处理器、外围电路、嵌入式实时操作系统和应用程序四 个部分组成【i 】。汽车仪表系统也不例外,微处理器是汽车核心控制平台的核心,针对 汽车仪表系统的成本低、实时性高、功耗低、多任务通信、多信息显示等设计要求, 这就要求选择的微处理器处理速度要快、存储容量要大、i o 功能要强、功能损耗要 低及实时响应要快。 目前基于a r m 技术的处理器已经占据了3 2 位r i s c 芯片的7 5 的市场份额 1 3 1 1 2 1 1 2 4 1 ,a r m 技术几乎无处不在。a r m 处理器主要包括几个系列的处理器:a r m 7 系列、a r m 9 系列、a r m 9 e 系列、a r m l 0 e 系列、s e c u r c o r e 系列、i n t e l 的x s c a l e 系列、i n t l e 的s t r o n g a r m 系列。其中a r m 7 系列处理器主要具有以下主要特点1 3 】: 1 ) 具有大量的寄存器。 2 ) 绝大多数操作都在寄存器中进行,通过l o a d s t o r e 的体系结构在内存和寄存 器之间传递数据。 3 ) 寻址方式简单。 4 ) 最高主频达到1 3 0 m i p s 、功耗很低。 5 ) 代码密度很高,兼容1 6 位的代码。 6 ) 得到广泛的操作系统和实时操作系统的支持。 从这些特点看出,一个a r m 7 系列的芯片已经能够完全满足汽车仪表系统的设 计要求,恩智浦公司生产的l p c 2 4 7 8 芯片是基于a r m 7 t d m i 核的3 2 位r i s c 微控 制器,除了具有上述的特点外,它拥有5 1 2 k b 的高速片内f l a s h 存储器,1 2 8 位宽度 的存储器接口和独特的加速机构,支持实时仿真和跟踪。此外,微控制器l p c 2 4 7 8 还拥有丰富的片上资源和外设接1 2 ,具体来讲,可归结为【3 。5 】: a r m 7 t d m i s 内核,最高主频达到7 2 m h z 。 5 第二章系统硬件平台设计基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 9 8 k b 的片内静态存储器,其中6 4 k b 的片内s r a m ,1 6 k bs r a m 用于以太 网,16 k b s r a m 用于d m a ( d i r e c tm e m o r ya c c e s s ) 控制器,2 k bs d r a m 用于 r t c 实时时钟。 5 1 2 k b 的片内f l a s h 程序存储器,支持在应用和在系统编程。 可配置的外部存储器接口,最多支持8 个b a n k ,支持外部r a m 、r o m 和f l a s h 存储器扩展,每个b a n k 最大可支持到2 5 6 m b ,可支持8 1 6 3 2 位字宽。 高级向量控制器,支持3 2 个向量中断,可配置优先级和向量地址。 通用a h bd m a 控制器用于支持s s p 、1 2 s 和s d m m c 接口。 1 0 1 0 0 m b p s 以太网m a c 接c i 。 多个串行接口,包括4 路u a r t 、3 路1 2 c 串行总线接口和1 个s p i 接口。 1 0 位a d 和d a 转换器,转换时间低至2 4 4 u s 。 u s bd e v i c e h o s t o t g 接口。 2 个c a n 总线接口。 4 个3 2 位的定时器、2 个p w m 脉冲调制单元、实时时钟和看门狗。 1 6 0 个高速g p i o 端口,4 个独立外部中断引脚。 标准a r m 调试接口,兼容各种现有的调试工具。 片内晶振频率范围为l 2 4 m h z 。 4 个低功耗模式:空闲、睡眠、掉电和深度掉电模式。 供电电压3 3 v 。 比起其它l p c 系列的微控制器,l p c 2 4 7 8 内部除了支持u a r t 、1 2 c 、s p i 、p w m 、 a d c 、定时器、m a c ( 媒体访问控制器) 、u s b 控制器、c a n 总线控制器等众多外 部接口,它内部还集成了l c d 控制器。综上所述,处理器l p c 2 4 7 8 很好的满足了汽 车仪表系统的设计要求,所以选择了这款芯片作为本系统的处理器。 6 基于l p c 2 4 7 8 的嵌入式i _ i c l i n u x 系统构建 第二章系统硬件平台设计 2 2 系统硬件平台搭建 一个未经裁剪的g c l i n u x 内核是很大的,就算是经过裁剪、编译后的g c l i n u x 内 核加上文件系统也要达到m 级的大小,处理器l p c 2 4 7 8 的片上资源明显不能满足 i - t c l i n u x 系统的内存要求。因此本系统在基于处理器l p c 2 4 7 8 为核心的开发板外围扩 展了存储器f l a s h 和r a m ,来满足g c l i n u x 系统的存储要求。另外在g c l i n u x 系统 的软件开发过程中,软件的下载和调试需要跟主机通信,因此串口、网口、j t a g 口 是必不可少的。基于上述的考虑,本课题构建的基于l p c 2 4 7 8 的嵌入式核心控制平 台的硬件组成,如图2 1 所示。 图2 1 硬件平台的框图 如图2 1 ,嵌入式i t c l i n u x 系统控制平台以l p c 2 4 7 8 微控制器为核心,外扩3 2 m 的s d r a m 、2 5 6 m 的n a n d f l a s h 、2 m 的n o r f l a s h ,提供串口、网口、j t a g 口和其 它接口功能扩展。设计异步动态存储器s d r a m 用来存储数据,设计静态存储器 n o r f l a s h 和n a n d f l a s h 用来固化程序,实现系统软件从非易失性固态存储器启动,串 口用来目标板与宿主机之间的通信,j t a g 接口用来支持在线调试和程序下载,网口 用来支持以太网功能,用于内核的下载和后续的应用程序远程调试。其它扩展功能接 口,主要包括c a n 、l c d 、u s b 等外部设备接口,用于汽车仪表系统后续功能的扩 7 第二章系统硬件平台设计 基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 展。 2 3 系统功能模块介绍 本课题讨论的应用于汽车仪表领域的嵌入式核心控制平台,主要包括主芯片模 块、串口控制模块、外部存储器模块,对于网口功能模块将在u b o o t 的移植部分进 行说明,其它扩展功能模块不在本课题讨论范围,因此不详细介绍,下面分别就每个 模块一一讲述。 2 3 1 主芯片模块 由l p c 2 4 7 8 的芯片手册可以看到,主芯片l p c 2 4 7 8 的内部结构由一个支持实时 仿真的a r m 7 t d m i s 的c p u ,连接片内存储器控制器的a r m 7 局部总线、连接中 断控制器的a h b 总线( a d v a n c e dh i g hp e r f o r m a n c eb u s ) 、连接片内各种外设功能的 a p b 总线( a d v a n c e dp e r i p h e r a lb u s ) 构成【3 , 6 1 。a h b 系统总线连接高性能的模块,如 外部存储器、u s b 接口、d m a 控制器、以太网控制器、l c d 控制器和高速g p i o 控 制器等。a p b 总线连接低带宽的外设模块,像1 2 c 、s p i 、1 2 s 、u a r t 、p w m 、a d c 、 d a c 、c a n 、开门狗定时器、系统控制等。a p b 总线与a h b 总线之间通过a h b 到 a p b 的桥相连。微控制器l p c 2 4 7 8 的系统存储器地址空间的映射,如图2 2 所示。 l p c 2 4 7 8 微处理器一共拥有4 g b 的存储器地址空间【3 。5 】,每段地址空间对应着不同的 设备。最顶端2 m b 的地址空间分配给a h b 外设,每个a h b 外设对应1 6 k b 的地址 空间,最大可以挂接1 2 8 个a h b 外设,目前只用到了向量中断控制器、以太网控制 器、g p d m a ( 通用d m a ) 控制器、e m c 控制器、u s b 控制器和l c d 控制器。紧 接着的2 m b 的地址空间分配给a p b 外设,每个a p b 外设也对应着1 6 k b 的地址空 间,因此l p c 2 4 0 0 处理器最大也可以挂接1 2 8 个a p b 外部设备,目前只用到了3 6 个外设模块。o x 8 0 0 0 0 0 0 0 o x 8 3 f f f f f f 一共6 4 m b 的地址空间对应着四个静态存储 器组,每个b a n k 占1 6 m b 的地址空间,0 x a 0 0 0 0 0 0 0 o x d f f f f f f f 共1 g 的地址空 间则对应四个动态存储器组,每个b a n k 占2 5 6 m b 的地址空间。最底端的地址空间 对应片内的f l a s h 和s r a m 。 8 基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 第二章系统硬件平台设计 4 她 3 7 5 g b 3 5 邙 2 o 2 一8 k 2 o g - 6 4 k a h b 外设 ( 以太同控制器、e k 控嗣器等) p b 外设 ( u a r t 、c a n 、w a t c h d o g 等) 外部扩展存储器 扩展存储中断向量 敬的b t l l 饵 一一 b o o tr 僵中断向量 8 姐o o t f l a s h ( 来自于f 1 a s h 存储器顶端的映射) 保留地址 b o o t f l a s h 片内易失存储器 ( 5 1 2 k f l a s h ) 一飘俑膊一 ( 来f l f l a s h 、s d r a i i 、b o o t r o a 或者外部扩展存储器) 图2 2l p c 2 4 7 8 的存储器地址空i 司映射 图2 2 中的虚线部分表示可重新映射的区域。在处理器l p c 2 4 7 8 中,为了满足在 不同地址空间主芯片对中断进行控制,该控制器设置了三种存储器重映射支持,分别 是b o o t 装载程序模式、用户f l a s h 模式、用户r a m 模式,在每个模式下都可以重新 映射中断向量的地址范围,这样当程序运行时,如果产生一个中断,a r m 内核会根 据存储器映射控制器里的存储器映射模式去相应模式里的中断向量读取指令操作。 l p c 2 4 7 8 的绝大部分引脚是复用的,每个引脚都有可能用于不同的外设功能,具体用 于什么功能,由引脚连接模块控制,通过设置引脚连接模块寄存器,可以利用处理器 l p c 2 4 7 8 支持的相应的功能接口。 每个模块的功能实现与后续的移植工作是密不可分的,为了为后面的移植工作做 铺垫,这里首先讨论了串口模块、外部存储器模块的功能实现。 9 第二章系统硬件平台设计 基于l p c 2 4 7 8 的嵌入式l a c l i n u x 系统构建 2 3 2 串口功能模块 t x d l r x d l t x d 2 r x d 2 调试串口 c o m l 图2 3 串口与微控制器l p c 2 4 7 8 的硬件连接 l p c 2 4 7 8 处理器含有四个符合1 6 c 5 5 0 工业标准的异步串行口,每个串口具有独 立的1 6 字节的f i f o ,接收器f i f o 触点为1 、4 、8 和1 4 字节,内置波特率发生器、 包含实现软件流控制的机制。如图2 3 ,串口c o m l 用来支持开发板和宿主机进行通 信,设置l p c 2 4 7 8 的功能复用输入输出口p 0 1 2 和p 0 1 3 为t x d l 和r x d l ,实现控 制器从串口发送数据、接收数据的功能。 不同于通常的查询方式的工作模式,本课题研究的串口,工作在中断方式下,串 口驱动主要包括三个方面:串口初始化、中断挂载、串口中断服务程序。具体需要设 置串口寄存器,实现中断挂载,编写中断服务程序。这样,当串口有接收、发送完成 或者操作错误时产生中断,微控制器根据中断标志寄存器辨别产生的中断执行相应的 操作。 2 3 3 外部存储器控制模块 l p c 2 4 7 8 微控制器通过e m c ( 外部存储控制器) 来控制外围的存储器。e m c 模 式是一个a h b 从机模块3 5 1 ,支持异步静态存储器、动态存储器等多种不同结构存储 器。而且e m c 模块同时支持多达8 个单独配置的存储器组【3 5 】,静态存储器和动态存 储器各4 个b a n k 。如图2 4 ,给出了e m c 模块的功能框图。 1 0 基于l p c 2 4 7 8 的嵌入式p c i i n u x 系统构建 第二章系统硬件平台设计 j 一 e l i c 心 一 广 外 ny 部 一 a h b 存 p a d 总 储 接 一 线 器 口一 控 1卜 制 一 u 器一 r 一 n一 一 7 一 图2 4 e m c 模块功能框图 ) 公用信号 ) 静鬻器 i 扣 a 2 3 :0 多 1 - 部存储器地址线,d 31 :o 】外部存储器数据线,w e ,写使能有效信号, 低电平有效,这三个信号静态存储器和动态存储器公用。除了这些,静态存储器的控 制信号还包括:o e ,静态存储器输出使能信号,低电平有效;b l s ,静态存储器的 字节定位选择信号;c s 0 c s 3 ,静态存储器的片选信号,每个组存储容量为1 6 m b , 支持数据宽度为8 位、1 6 位和3 2 位数据宽度。动态存储器的控制信号还包括:c a s , 动态存储器的列地址选通信号,低电平有效;r a s ,行地址选通信号,低电平有效; c l k o u t 1 :0 】,s d r a m 的时钟信号,来自于c p u 系统时钟;c k e o u t 3 :0 】,s d r a m 的时钟使能信号;d q m o u t 3 :0 ,s d r a m 的输出掩码,d y c s 3 :0 ,动态存储器的 片选信号,低电平有效,每个组存储容量为2 5 6 m b ,支持单数据率s d r a m ,支持 1 6 位和3 2 位数据宽度【l 】。本开发板通过e m c 模块外扩了异步静态存储器( n a n d f l a s h ) 和动态存储器( s d r a m ) ,在使用过程中,需要仔细阅读外扩存储器芯片资料,获 得准确的e m c 相关寄存器的配置参数,才能使得外扩存储器使用正常。 2 3 4s d 洲模块 外扩同步动态存储器s d r a m 用来运行操作系统内核及应用程序。韩国三星公司 生产的k 4 s 5 6 1 6 3 2 h ,容量3 2 m ,内部存储结构为4 m 1 6 b i t s 4 b a n k s 【6 】,存储空间分 1 1 第二章系统硬件平台设计 基于l p c 2 4 7 8 的嵌入式p c l i n u x 系统构建 为四个组,每个组大小为4 m ,数据宽度为1 6 b i t s 。它与处理器l p c 2 4 7 8 的硬件连接, 如图2 5 所示。 图2 5s d r a m 与l p c 2 4 7 8 的硬件连接 b a 0 ,b a l 用来指示存储块,分别连接到e m c 模块地址线的a 1 3 和a 1 4 ,这是 l p c 2 4 0 0 系列e m c 模块特有的连接方式【3 1 。根据k 4 s 5 6 1 6 3 2 h 的存储结构,内存单 元的地址由r o w 地址、b a n k 地址、c o l u m n 地址组成,c o l u m n 地址用9 个b i t 表示, r o w 地址用1 3 个b i t 表示。如图2 5 所示,地址线a 1 2 :0 与e m c 模块的地址线对应 相连,s d r a m 的行地址和列地址线复用,当赋予行地址时,使用a 1 2 :0 ,当赋予 列地址时,使用a 8 :0 】,因此只需用到e m c 模块的1 5 根地址线, 但在实际的地址 映射中,低两位是比较特殊的引脚,如图2 6 ,是根据3 2 m 的s d r a m ,1 6 位数据宽 度,选择的内存单元的地址映射。 1 2 基于l p c 2 4 7 8 的嵌入式l l c l i n u x 系统构建第二章系统硬件平台设计 胁:r 们 2 4 :1 2 图2 6 地址映射 图2 6 中a 表示a 1 】和a 【o 】位,由s d r a m 控制器控制,对于1 6 位数据宽度的 异步动态存储器s d r a m ,s d r a m 控制器传输3 2 b i t 的数据分两次传输,第一次列 传输时,最低位设置成0 ,第二次传输时,最

温馨提示

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

评论

0/150

提交评论