(计算机系统结构专业论文)控制台服务器与ipdu集成的设计与实现.pdf_第1页
(计算机系统结构专业论文)控制台服务器与ipdu集成的设计与实现.pdf_第2页
(计算机系统结构专业论文)控制台服务器与ipdu集成的设计与实现.pdf_第3页
(计算机系统结构专业论文)控制台服务器与ipdu集成的设计与实现.pdf_第4页
(计算机系统结构专业论文)控制台服务器与ipdu集成的设计与实现.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(计算机系统结构专业论文)控制台服务器与ipdu集成的设计与实现.pdf.pdf 免费下载

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

文档简介

at h e s i sf o rt h ed e g r e eo fm a s t e ri nc o m p u t e ra r c h i t e c t u r e d e s i g na n di m p l e m e n t a t i o no fi n t e g r a t i o no f c o n s o l e s e r v e ra n di p d u b yb a os h e n g f e i s u p e r v i s o r :p r o f e s s o rg a of u x i a n g n o r t h e a s t e r nu n i v e r s i t y d e c e mb e r2 0 0 7 ll-1r jr-, j 1 _ r 0k, 一 独创性声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取得的 研究成果除加以标注和致谢的地方外,不包含其他人已经发表或撰写过的 研究成果,也不包括本人为获得其他学位而使用过的材料。与我一同工作 的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示诚挚 的谢意。 学位论文作者签名:钇秽毛厂 签字日期:9 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东北大学有关保留、使用学位论 文的规定:即学校有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人同意东北大学可以将学位论文的全部 或部分内容编入有关数据库进行检索、交流。 ( 如作者和导师同意网上交流,请在下方签名:否则视为不同意) 学位论文作者签名:够够芒 导师签名:岛磊嘲 签字日期:p 沙 签字日期:州争,、y 、岁卜 、lilf-t 、l 东北大学硕士学位论文 控制台服务器与i p d u 摘 随着技术的发展和对大量用电设备的需要,设备的管理变得越来越复杂,能远程地 管理和控制设备已经是基本的需求。目前,应用中存在大量通过串口进行管理的设备, 而串口不利于数据的远程传输。控制台服务器的开发解决了这个问题。i p d u 是一种对 设备电源进行管理的智能电源管理系统,它通过串口进行配置,可以灵活的对设备进行 开关等操作。通过控制台服务器和i p d u 的集成,当二者结合使用时,就好像控制台服 务器有了电源管理的功能。这样,不仅实现了设备电源的远程控制,也使用户操作更加 简单、友好。 本课题所研究的系统基于控制台服务器的软件和硬件进行开发。通过对i p d u 和控 制台服务器的研究,成功的将l i n u x 内核和共享库移植到了a r m 硬件平台上。然后, 在嵌入式l i n u x 系统上开发了与i p d u 通信的应用程序。该系统使用共享内存作为进程 通信方式,支持多个用户同时操作一个串口上的i p d u ,而用户的命令串行地完成。同 时,该系统还移植了嵌入式w e b 服务器并开发了网站,在保证安全性的同时,为用户 提供了更加方便友好的操作方式。 本文系统地分析了将控制台服务器和i p d u 集成的方案。首先,本文介绍了系统开 发的应用背景和技术背景,阐述了本系统的理论意义和实际意义;然后,说明了系统实 现的开发环境和技术方案,指明了系统的开发平台和应解决的技术难点;在接下来的设 计和实现部分中,本文结合图表详细说明了系统实现的目标、思路和方法,并对系统的 每个模块进行了分析,对主要算法和系统状态进行了解释。最后,论文对系统的测试进 行了说明,总结了项目中的经验,并指出了系统目前需要改进的方面。 关键词:控制台服务器;电源管理:嵌入式;共享内存 tiii d e s i g na n d i m p l e m e n t a t i o no fi n t e g r a t i o no f c o n s o l es e r v e ra n di p d u a b s t r a c t w i t ht h ed e v e l o p m e n to ft e c h n o l o g ya n dt h er e q u i r e m e n to fl a r g en u m b e r so f e l e c t r i c a l d e v i c e s ,m a n a g e m e n to ft h e s ed e v i c e sb e c o m e sm o r ec o m p l e xa n dr e m o t em a n a g e m e n t a n d c o n t r o lo ft h e mb e c o m e sab a s i cr e q u i r e m e n t c u r r e n t l y , t h e r ea r em a n yd e v i c e sc o n f i g u r e db y s e r i a lp o r tw h i c hi sn o te a s yt or e m o t e l yt r a n s f e rd a t a c o n s o l es e r v e ri sas c h e m ed e v e l o p e d t os o l v et h ep r o b l e m i p d uw h i c hi si n t e l l i g e n tp o w e rm a n a g e m e n ts y s t e m f o rf l e x i b l y c o n t r o lp o w e ro fs o m ee q u i p m e n ti si t s e l fo p e r a t e dt h r o u g hs e r i a lp o r t i n t e g r a t i n gc o n s o l e s e e ra n di p d um a k e st h e mw o r kb e t t e rt o g e t h e ra n di ts e e m st h a tc o n s o l es e w e rh a st h e a b i l i t yo fp o w e rm a n a g e m e n t n o to n l yd o e st h a tr e a l i z er e m o t ep o w e r m a n a g e m e n t ,b u ta l s o m a k e st h eo p e r a t i o ne a s ya n df r i e n d l y t h es v s t e r ni sd e v e l o p e db a s e do nt h es o f t w a r ea n dh a r d w a r eo fc o n s o l es e r v e ea f t e r r e s e a r c h i n go fi p d ua n dc o n s o l es e w e dt h e l i n u xk e m e la n ds o m es h a r e dl i b r a r ya r e s u c c e s s f u l l yp o r t e dt oa r m h a r d w a r ep l a t f o r m t h e n ,s o m ea p p l i c a t i o n sw h i c hc o m m u n i c a t e w i t hi p d ua r ed e v e l o p e do nt h ee m b e d d e dl i n u x t h es y s t e mu s e ss h a r e dm e m o r ya st h e w a vf o ri n t e 卜c o m m u n i c a t i o n ,a n ds u p p o r t sm u l t i p l eu s e r s m e a n w h i l e ,aw e bs e r v e ra n da w e b s i t ea r ep o r t e dt ot h ed e s t i n a t i o ns y s t e mt op r o v i d eu s e r sm o r ec o n v e n i e n to p e r a t l o n s b e s i d e ss e c u r i t yg u a r a n t e e as c h e m ef o ri n t e g r a t i n gc o n s o l es e r v e ra n di p d ui ss y s t e m i c a l l ya n a l y z e di nt h i st h e s i s f i r s t l y , t h e a p p l i c a t i o na n dt e c h n o l o g yb a c k g r o u n do ft h es y s t e m a r ei n t r o d u c e d ,a n di t s t h e o r e t i c a la n dp r a c t i c a lm e a n i n gi ss t a t e d t h e n ,t h ed e v e l o p i n ge n v i r o n m e n ta n dt e c h n i c a l s c h e m ef o rt h es y s t e ma r es p e c i f i e d ,a n dt h ep l a t f o r ma n dt e c h n i c a ld i f f i c u l t i e sa l e i l l u m i n a t e d i nt h ef o l l o w i n gp a r to fd e s i g na n di m p l e m e n t a t i o n ,d e s t i n a t i o n ,s c h e m ea n di m p l e m e n t a t i o n m e t h o do ft h es y s t e ma r ei l l u s t r a t e di nt h et h e s i s ,a n de a c hm o d u l e ,m a i na l g o r i t h m sa n d s y s t e ms t a t e st r a n s i t i o n i s e x p l a i n e d a tl a s t ,s y s t e m t e s t i n g a n dp r o j e c te x p e r i e n c ei s p r e s e n t e d ,a n ds o m ea s p e c t so f t h es y s t e mt ob ei m p m v e da r ep o i n t e do u t k e y w o r d s :c o n s o l es e r v e r ;i p d u ;e m b e d d e ds y s t e m ;s h a r e dm e m o r y i i i lllll, ill, 东北大学硕士学位论文目录 目录 独创性声明i 摘要i i a b s t r a c t i i i 第一章引言1 1 1 开发背景1 1 1 1 控制台服务器1 1 1 2 智能电源分配单元4 1 2 课题意义5 1 3 本文组织结构6 第二章开发平台与相关技术7 2 1 系统实现目标7 2 2 技术方案7 2 2 1 硬件方案7 2 2 2 软件方案1 0 2 3 系统开发平台1 6 2 3 1 主机平台1 6 2 3 2 目标平台1 7 2 4 文档管理和源码管理1 8 2 5 本章小结1 9 第三章系统分析与实现方案2 1 3 1 系统分析2 l 3 2 系统功能设计2 3 3 2 1 服务器功能2 3 3 2 2 用户程序功能2 6 3 3l i n u x 相关技术方案2 8 3 3 1 信号编程2 8 3 3 2g n ur e a d l i n e 库的编程2 9 3 3 3l i n u x 下的多线程3 0 3 3 4 守护进程31 3 3 5 读写超时控制3 2 3 3 6 共享内存3 3 一i v 东北大学硕士学位论文 目录 3 4 本章小结3 4 第四章详细设计与系统实现3 5 4 1 系统整体功能3 5 4 2 服务器实现3 7 4 3 用户程序实现4 l 4 4w 曲操作功能的实现4 4 4 5 日志系统的实现4 6 4 6 协议转化功能的实现4 7 4 7 本章小结4 8 第五章调试与测试4 9 5 1 软件测试4 9 5 2 系统配置4 9 5 3 测试环境5 0 5 3 1 调试工具g d b 5 0 5 3 2 跟踪工具j i r a 一5 l 5 4 测试用例设计5 2 5 5 系统负荷测试:5 3 5 6 测试结果一5 4 5 7 本章小结5 4 第六章结论5 5 6 1 总结5 5 6 2 未来工作5 5 参考文献”5 7 致谢5 9 一v l 0 东北大学硕士学位论文 第一章引言 第一章引言 1 1 开发背景 1 1 1 控制台服务器 目前,r s 2 3 2 是应用最广泛的一种串行接口。r s 2 3 2 被定义为一种在低速率串行通 信中增加通信距离的单端标准。r s 2 3 2 采取不平衡传输方式,即所谓单端通信。但是 r s 2 3 2 定义的最高电压是1 5 v ,然而实际使用中一般最高电平也仅仅+ 5 v 而已。信号太 弱,长途传输则信号损耗严重且低电平容易受外界干扰。所以r s 2 3 2 的串口不利于远程 传输。 为了解决串口远程传输的问题,各个厂商提出了很多方案。每个方案的基本原则就 是允许用户通过网络访问串口设备。 ( 1 ) r f c 2 2 1 7 r f c 2 2 1 7 提出通过t e l n e t 这样的网络协议和串口协议的转换完成串口设备的远程管 理,将串口变成一个可以在网络上使用的装置,而客户端只要一个r f c 2 2 1 7 兼容的软 俐。 远程登录协议定义了一个面向字符、交互式的通信对话。它原来设计在一个客户和 一个运行远程服务的主机之间建立对话。 许多新的商业功能要求连接到远程的服务器检索或存放信息。最多的一种方式是这 些远程服务经由异步拨号连接实现。 为了有助于减少在安装和维护附加电话线路的费用,许多设备制造商在访问量较大 的服务器和路由器上补充了端口直接远程登录的功能,也就是存取服务器。然而,当前 远程登录定义无法充分满足越来越多的用途。这项协议需要将三方面的功能补充到 t e l n e t 协议以有效支持m o d e m 外拨。 客户将串口配置信息发送给连接到外拨m o d e m 的存取服务器的功能。这需要 在字节级别上确保传送和接收的正确格式。 存取服务器将诸如信号变化之类的信息通知任意一个m o d e m 线上的客户端的 功能,例如r l s d 信号变化。这类信息是重要的,因为许多客户的软件包用这项信息来 判定是否与远程服务建立了连接。 客户端和存取服务器之间流量控制的管理功能。它并不涉及到在客户端与远程 服务之间所建立的会话中流量控制机理的。 不幸的是,r f c l 3 7 2 “远程登录远程的流控制选项不能满足这种目的,因为它依 一1 一 东北大学硕士学位论文 第一章引言 赖于发送x o n x o f f 字符,字符也许会被传送或接收作为标准过程的客户远程的服务对话 【2 】。图1 1 是r f c 2 2 1 7 的一个部署图。 8 用户 8 用户 8 用户 图1 1r f c 2 2 1 7 设备部署图 f i g i 1d i a g r a mo fd e v i c e sd e p l o y m e n tf o rr f c 2 2 17 目前已经开发的实现r f c 2 2 1 7 的开源项目主要有: s e r 2 n e t s e r 2 n e t 为用户从网络连接到串口设备提供了一种方案。它提供了所有串口的配 置方法,使用了一个配置文件。通过控制访问使用户修改串口的参数、监视串口的流量 和行为、控制串口的数据等。该软件支持r f c 2 2 1 7 ( 远程控制串口参数) ,但是需要相 应的客户端软件。 s r e d i r e c t s e r c d 是r f c 2 2 1 7 兼容的串口中转软件。它允许用户通过网络共享一个串口设备。 它基于软件s r e d i r d 。s e r c d 利用了i n e t d 的机制来实现,因此配置起来非常简单。 只要安装i n e t d 或者x i n e t d ,并且配置好e t c s e r v i c e 和i n e t d 的配置文件就可以使用了。 t e l n e t c p c d 该软件是一个r f c 2 2 1 7 的服务器。它创建了一个m o d e m 池,局域网上的连接共 享这个m o d e m 池,这样实现网络和串口数据和命令的转换。 j a 、,a r f c 2 2 1 7 库 使用n v t c o m 库可以用j a 、,a 语言访问r f c 2 2 1 7 设备。这个库隐藏了t e l n e t 协议 和设黄串口参数等方法的细节。这样,可以非常简单的使用j 筒队定制r f c 2 2 1 7 的服务 器,从而使得t e l n e t 终端访问串口设备。该项目开源,可以获取到二进制库和源代码。 ( 2 ) 虚拟串口 一2 一 j 东北大学硕士学位论文第一章引言 串口服务器也是一种解决方案,它是为r s 2 3 2 4 8 5 4 2 2 到t c p i p 之间完成数据转 换的通信接口转换器。提供r s 2 3 2 4 8 5 4 2 2 终端串口与t c p i p 网络的数据双向透明传 输,提供串口转网络的功能,可以让串口设备立即连接网络。 虚拟串1 2 1 软件的设计本质上讲就是一个“软件桥接器的设计。这个“桥接器”位 于基于串口通信的管理软件与现场总线网络驱动层之间【3 4 】,如图1 2 所示。 安装了虚拟串口客 户端驱动的终端 虚拟串口津1 3 服务器( 桥接器) 、 串口设备 串口设备 串口设备 图1 2 虚拟串口设备部署图 f i g 1 2d i a g r a mo fd e v i c e sd e p l o y m e n tf o rv i r t u a lm o d e m 目前,有很多虚拟串口的软件和硬件的集成方案。例如v s p n ( w i n d o w s 下的虚拟 串口软件) 和v i r t u a lm o d e m ( l i n u x 下的开源项目) 。 ( 3 ) 控制台服务器 从以上的两种方案中可以看出来,对串口设备的远程管理都是通过t c p i p 协议来 实现的。r f c 2 2 1 7 确实是一种优秀的标准,但是t e l n e t 协议的数据是没有加密的,所以 这个标准的安全性并不好。虚拟串口在实现的时候虽然可以使用一些方法对数据进行加 密,但是增加了系统的负载。另外,通常一个虚拟串口对应一个设备,不能实现多用户 同时操作同一个串口设备。 目前有一个开源项目,叫控制台服务器。它允许多个用户同时监视同一个串口上的 数据,而同时,只有一个用户可以向串口写数据。它有完善的日志管理功能。控制台服 务器可以将所有的串口通信的数据记录下来,当用户发现错误时,可以根据这些日志进 行检查和恢复。这些同志可以保存在本地的文件中,也可以和同志服务器绑定在一块。 因为多个用户可以同时监视同一个串口,方便了多个人合作操作同一个设备和一个人给 多个人培训。同时,用户之间还可以通过这个软件在终端中向某个用户或者所有用户发 送实时消息,交流起来非常容易。 控制台服务器整个项目是基于c s 模式的。一般来说,需要用户安装客户端软件。 但是本次项目中,客户端和服务器都被移植到了一个嵌入式l i n u x 系统上。用户需要使 用s s h 终端登录到系统上以后,使用系统内的客户端软件,而无需在终端电脑上安装。 一3 一 东北大学硕士学位论文第一章引言 这样,提高了系统的移动性和安全性。 当网络本身出现问题时,例如路由器崩溃、光缆切断,对网络管理是非常致命的。 控制台服务器在硬件上有一个m o d e m 接口,并且在嵌入式l i n u x 系统之上运行了点对 点服务器,从而提供一个带外管理的功能,应对网络故障。用户可以通过p s t n 拨号连 接到控制台服务器,从而使用p p p 协议之上的t c p i p 协议进行网络操作。同时,这种 方案还在一定程度上保证了数据传输的安全性。 1 1 2 智能电源分配单元 一般情况下,用电设备会接在插座上,需要给设备断电的时候,将插头拔下来或者 将插座断电。反之,将插头接上或者将插座上电。但是当一个管理员管理很多设备的时 候,这确实是一件让人头疼的事情。管理员需要记住每个设备对应的插座,而且,当设 备出现问题是,管理员必须赶到事故现场而不能远程操作。 i p d u ( i n t e l l i g e n tp o w e rd i s t r i b u t e du n i t ) ,即智能电源分配单元,可以解决大数量 用电设备的电源管理问题。i p d u 支持2 5 条命令,功能包括:对每个插座的操作( 查看、 断电、上电、重启) ;给每个插座重命名;用户管理;重新启动;更新固件等等。 i p d u 通过串口进行管理配置,用户通过终端输入命令来控制该设备。例如使第一个插 座通电,可以使用命令o n1 ;使得前4 个插座断电,可以o f f l - 4 ;将所有的插座都重启 一遍,使用命令c y c l ea l l 或者c y c l e1 1 0 ;还可以使用以下的命令格式,如o n1 , 3 ,6 - 7 ,9 。 使用i p d u ,可以为每一个插座命名。例如,如果在第一个插座上连接了一个冰箱,可 以使用n a m e1i c e b o x 将第一个插座命名为i c e b o x 。启动或关闭冰箱时,可以使用命令 o ni c e b o x 或者o f f i c e b o x 。这样,方便了用户的操作,提高了系统的操作性。 被控设备 图1 3 控制台服务器和i p d u 集成使用方案图 f i g 1 3d i a g r a mo fi n t e g r a t i o no fc o n s e r v e ra n di p d u i p d u 具有较高的安全性,用户访问时必须通过验证才可以进行操作。可以设置超 时时间,当一段时间没有任何操作时,i p d u 恢复到验证状态。 _ 4 。 2 东北大学硕士学位论文 第一章引言 可见,使用i p d u 对大量设备进行管理,有以下好处: ( 1 ) 使设备的电源管理具有安全性,用户访问任何资源以前,必须经过用户验证。 ( 2 ) 方便了设备的管理,可以为每一个插座重命名。访问时,按照名字访问就行。 ( 3 ) 节省成本,如果将i p d u 远程控制,对管理员来说节省了赶赴现场的开销。 控制台服务器是远程管理串口的设备,而i p d u 恰好是通过串口进行管理的设备。 将二者集成,就好像控制台服务器拥有了i p d u 的功能。管理员可以通过控制台远程的 管理连接在i p d u 上的设备的开关,透明的使用i p d u ,而并不知道它的存在。从图1 3 中可以看出二者结合的用法。 1 2 课题意义 本系统是嵌入式的解决方案。嵌入式系统是计算机软件和硬件的综合体,可涵盖机 械或其他的附属装置,所以嵌入式系统可以笼统地分为硬件和软件两部分。嵌入式系统 的构架可以分成四个部分:处理器、存储器、输入输出( i o ) 和软件。由于多数嵌入 式设备的应用软件和操作系统都是紧密结合的,这也是嵌入式系统和通用p c 系统的最 大区别。嵌入式系统的体系结构如图1 4 所示。 嵌入式系统 应用层 操作系统层 驱动层 硬件抽象层板级支持包 硬件 通用接口 处理器 r o m s d r a m 软 件 硬 件 图1 4 嵌入式体系结构图 f i g 1 4d i a g r a mo fe m b e d d e ds y s t e ma r c h i t e c t u r e 嵌入式系统的软件部分包括嵌入式操作系统、应用程序、文件系统以及图形用户界 面【5 ,6 7 1 。由于受到硬件的限制,在其上面运行的应用程序以及文件系统都要进行特殊的 处理。图形用户界面提供一个人机交互的智能接口,使用户能够像使用p c 应用程序那 样方便。 系统的一个主要技术方向就是嵌入式l i n u x 。l i n u x 系统具有最新u n i x 的全部功能, 包括真正的多任务、虚拟存储、共享库函数、存储管理和t c p i p 网络工具。l i n u x 系统 不仅能够运行于p c 平台,还在嵌入式系统方面得到广泛应用。在各种嵌入式操作系统 一5 一 东北大学硕士学位论文第一章引言 迅速发展的状况下,嵌入式l i n u x 逐渐形成了可与w i n d o w s c e 等嵌入式操作系统相抗 衡的局面。 l i n u x 为嵌入式操作系统提供了一个极有吸引力的选择,它是以内核为基础的、完 全内存保护、多任务、多进程的操作系统,支持广泛的计算机硬件。它的软件源码全部 公开,任何人都可以修改并在g p l ( g e n e r a lp u b l i cl i c e n s e ,通用公共许可证) 下发行, 这样,开发人员可以对操作系统进行定制,只要满足g p l 的机制即可。l i n u x 还提供了 强大的网络功能,其强大的语言编译器g c c 、g + + 等也可以很容易得到,不但成熟完善、 而且使用方便。 通过本课题的研究与应用,对嵌入式l i n u x 系统的灵活性和可扩展性进行了进一步 的扩展。通过开发驱动程序,丰富了嵌入式l i n u x 的内容。课题涉及到大量的网络应用, 不仅涉及到了l i n u x 内核中关于网络的开发、裁剪,更是在应用程序层进行了大量的网 络编程和多种网络协议的研究和移植。此外,本课题使用了l i n u x 中i p c 的多种多样的 方法,包括共享内存和信号,为i p c 的开发和研究提供了参考。 在应用方面,本课题的研究成果有很实用的实际意义。因为通信公司和银行等单位 的很多设备,如交换机、路由器、基站设备,都使用串口来进行配置,有了控制台服务 器,就可以远程地对这些串口设备进行配置了。另外,通信公司的基站好多处于山顶等 不易到达的地方,如果基站上某个设备死机,管理员很难重启,有了控制台服务器和 i p d u ,管理员就可以很方便的远程重新启动这些设备了。 综上所述,本课题有很重要的理论意义和实际意义。 1 3 本文组织结构 通过对技术的分析和对市场的调查,本课题采用a r m 的$ 3 c 2 4 1 0 为硬件平台,在 嵌入式l i n u x 之上,实现了控制台服务器和i p d u 的集成。本文按如下结构组织。 首先分析了当前的技术特点,解释了采用a r m 和嵌入式l i n u x 的必要性,分析了 嵌入式发展的方向和嵌入式的软硬件结构,并对这些技术的发展和内容进行了介绍。 其次,本文对系统的目标和模块的划分进行了说明,列举了实现方案,给出了最佳 的实现方式,对该实现的主要技术进行了透彻的分析和论证。 然后,本文结合图标详细说明了系统的实现细节,包括用户的用例、用户使用的时 序,并且给出了算法的实现和各个模块的状态和活动图,以及模块的实现方式。 接下来,本文对系统的调试和测试进行了介绍,包括调试的工具和测试的环境,并 列举了测试用列和测试方法,并且报告了测试结果。 最后,本文对系统和本文的工作进行了总结,并且指出了系统改进的方向。 一6 一 拥有了电源管理的功能。 系统需要实时性,即快速的对用户请求进行响应;系统必须具有较高的可靠性、健 壮性和容错性,因此系统需要自恢复的能力;系统必须能适合恶劣的外部环境,因为设 备可能需要放置在无人区,需要对温度、湿度有较大的适应范围;系统的开发成本要尽 量小。系统需要支持带外管理,也就是当以太网瘫痪的时候,用户可以拨号到控制台服 务器,从而使用p p p 协议作为链路层协议,而继续进程远程管理。 整个系统包括两部分硬件,控制台服务器和i p d u 。控制台服务器的硬件基于a r m 内核的c p u ,b o o t l o a d e r 使用三星公司的v i v i 或者是开源的u b o o t 。b o o t l o a d e r 移植成功 以后,根据它的配置移植l i n u x 内核,内核需要选择i p s e c 和p p p 功能,因为系统需要 支持带外管理。然后移植y a f f s 文件系统和应用程序,需要移植的主要应用层软件如表 2 1 所示。 表2 1 应用软件移植列表 t a b l e2 1l i s to f a p p l i c a t i o n st op o r t 2 2 技术方案 2 2 1 硬件方案 控制台服务器基于a r m 9 2 0 t 的$ 3 c 2 4 1 0 这款c p u ,属于a r m 9 系列。a r m 公司 ( a d v a n c e dr i s cm a c h i n e s ) 成立于1 9 9 0 年,公司本身并不生产芯片,而专门从事芯 一7 一, 东北大学硕士学位论文第二章开发平台与相关技术 片的设计,出售芯片技术授权,即知识产权供应商。a r m 公司将这些i p 核授权给各个 半导体公司,半导体公司在这些处理器内核的基础上进行再设计,嵌入各种外围功能部 件,形成各种各具特色的嵌入式处理器。例如:a t m e l 公司的a t 9 1 系列、c i r r u sl o g i c 公司的e p 系列、i n t e l 公司的s t r o n g a r m 等。截至目前,a r m 已占据了嵌入式内核市 场的8 0 以上的分额。a r m 系列处理器是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 ) , 精简指令集计算机) 体系的典型代表。 r i s c 是在分析了c i s c ( c o m p l e xi n s t r u c t i o ns e tc o m p u t e r ,复杂指令集计算机) 体 系缺点的基础上发展起来的体系结构,其特点是指令及其格式精简,操作和控制简洁。 基于r i s c 体系的处理器结构简洁、面积小、功耗小,非常适合于嵌入式应用的场合【8 】。 采用r i s c 架构的a r m 微处理器一般具有如下特点: ( 1 ) 体积小、低功耗、低成本、高性能 ( 2 ) 支持t h u m b ( 1 6 位) a r m ( 3 2 位) 双指令集,很好的兼容8 位和1 6 位器件 ( 3 ) 大量使用寄存器,指令执行速度更快 ( 4 ) 大多数数据操作都在寄存器中完成 ( 5 ) 寻址方式灵活简单,执行效率高 ( 6 ) 指令长度固定 到目前为止,a r m 微处理器的应用几乎已经深入到各个领域,并且将来a r m 微 处理器会在以下领域取得更加广泛的应用。 ( 1 ) 工业控制领域:作为3 2 位的r i s c 架构,基于a r m 核的微控制器芯片不但占 据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展, a r m 微控制器的低功耗、高性价比,向传统的8 位1 6 位微控制器提出了挑战。 ( 2 ) 无线通信领域:目前已有超过8 5 的无线通信设备采用了a r m 技术,a r m 以 其高性能和低成本,在该领域的地位日益巩固。 ( 3 ) 机器人领域:自主移动机器人技术包含了多种技术,其中重要的一个就是嵌入 式技术。特别是在小型机器人上,由于其体积小、功耗小、功能强,嵌入式处理器同样 得到了广泛的应用。 ( 4 ) 网络应用:随着宽带技术的推广,采用a r m 技术的a d s l 芯片正逐步获得竞 争优势。此外,a r m 在语音及视频处理上进行了优化,并获得广泛支持,也对d s p 的 应用领域提出了挑战。 ( 5 ) 消费类电子产品:a r m 技术在目前流行的数字音频播放器、数字机顶盒和游戏 机中得到了广泛的应用。 ( 6 ) 成像和安全产品:现在流行的数码相机和打印机中绝大部分采用a r m 技术。 一8 一 东北大学硕士学位论文第二章开发平台与相关技术 手机中的3 2 位s i m 智能卡也采用了a r m 技术。 嵌入式应当选择通用性强、功能完备、稳定可靠的芯片。当今的很多处理器芯片多 为基于结构,内置很多通用接口控制器,使用简单且可极大地降低成本。目前,世界上 各大芯片生产商纷纷推出自己的芯片,其专注的应用背景不同,各有自己的特色。相比 较而言,a r m 系列处理器无论从处理速度、外设接1 2 1 以及应用范围等方面都更胜一筹。 本课题选择了三星公司的$ 3 c 2 4 1 0 作为系统的嵌入式处理器,是三星公司生产的基 于a r m 9 2 0 t 内核的微处理器,采用五级流水线和哈佛结构,提供1 1 m i p s m h z 性能, 主频可达2 0 3 m h z ,是高性能和低功耗的硬宏单元。a r m 9 2 0 t 具有全性能的m m u 、指 令和数据c a c h e 以及高速总线接口。$ 3 c 2 4 1 0 内部结构如图2 1 所示。 l c d 控l c db 八 一总线控制器 l 制器 d m an 叫编码器解码器 u s b = z 机k d 中断控制 控制器pa h b j b 部主g ti 总 蚓电源管理 线 n a n d 控制器 存储器管理 n a n df l a s h瓜 1 卜、 s r a m 或者 b o o t w s d r a m l o a d e r 图2 1 $ 3 c 2 4 1 0 内部结构图 f i g 2 1d i a g r a mo f $ 3 c 2 4 10s t r u c t u r e $ 3 c 2 4 1 0 面向低端应用,价格低廉。该芯片具有较高的处理速度,通过内部的锁相 环,最高可在2 0 0 m h z 的系统时钟下运行。内核电压为1 8 v 供电,外围i o 口使用3 3 v 的电压,具有3 种低功耗控制方式,甚至可以把c p u 中除了唤醒逻辑之外的所有功能 都关闭,极大地降低功耗。与其他的芯片相比,在片上集成了更多外设接口。例如外部存 储器控制器:l c d 、d m a 、u s b 、s d 、m m c 卡控制器、u a r t 、s p i 接口、1 2 c 总线控 制器和i i s 总线控制器,p w m 定时器,看门狗,1 1 7 个外部i o 口,2 4 个外部中断源, a d c 和触摸屏接口,实时时钟以及片上p l l 的时钟产生等。使用集成的接口,可方便 地进行功能扩展。另一个优点是具有小巧的外形,嵌入式应用希望硬件尺寸越小越好。 $ 3 c 2 4 1 0 采取了封装,整个芯片大小仅为1 平方厘米,相当于普通人拇指指甲的大小。 虽然在如此小的体积上集成了如此之多的功能,但其价格与普通处理器相当【9 】。从各种 方面考虑,具有极高的性价比以及应用价值,且易于开发和功能扩展,因此很适合作为 嵌入式系统的中央处理器。 一9 一 东北大学硕士学位论文第二章开发平台与相关技术 由于$ 3 c 2 4 1 0 自身带三个串口,而控制台服务器需要更多。所以,需要使用8 2 5 0 芯片进行串口扩展。同时,软件中需要修改驱动的源代码,将8 2 5 0 的驱动修改为可加 载的模块,以在需要的时候加载。 2 2 2 软件方案 硬件之上的软件有5 层,包括: ( 1 ) 启动器b o o t l o a d e r 的移植 b o o t l o a d e r ( 引导装载器) 是用于初始化目标板硬件,给嵌入式操作系统提供板上 硬件资源信息,并进一步装载、引导嵌入式操作系统运行的固件。在嵌入式系统开发过 程中,b o o t l o a d e r 的编写往往是设计的主要难点。目前,b o o t l o a d e r 的开发通常都是基于 一些开源的b o o t l o a d e r ( 如v i v i 、u b o o t 、b l o b 、r m b o o t 、r e d b o o t 等) 而设计。v i v i 是当前比较流行的,专门针对a r m 9 处理器而设计的一款b o o t l o a d e r ,它操作简便,同 时提供了完备的命令体系。因此,系统采用了v i v i 作为b o o t l o a d e r 并进行了修改。 c 卫 i 坠塑塑焉怒丽 广j j = 二 = 关闭中断 i i 初始化堆 l i 一 l j 厂霹舸i 同厮蛔 l 一塑遨一 l 叫馘“。i 厂硫弧碗i 石即l 厂预语蕊 旦垫堑i :i有数据 i ,j l l, i 竺堂:! ! 坚奎兰i | 厂 艇 阿阐;际蕊 t 一; t 圃 图2 2v i v i 运行过程 f i g 2 2r u n n i n gp r o c e s so fv i v i v i v i 作为一种b o o t l o a d e r ,其运行过程分成两个阶段。第一阶段的代码在 v i v i a r c h s 3 c 2 4 1 0 h e a d s 中定义,大小不超过1 0 k b ,它包括从系统上电后在o x 0 0 0 0 0 0 0 0 地址开始执行的部分。这部分代码运行在f l a s h 中,它包括对$ 3 c 2 4 1 0 的一些寄存器、 时钟等的初始化并跳转到第二阶段执行。第二阶段的代码在v i v i i n i t m a i n c 中,主要进 行一些开发板初始化、内存映射和内存管理单元初始化等工作,最

温馨提示

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

评论

0/150

提交评论