您好,欢迎来到微智科技网。
搜索
您的当前位置:首页移动医疗系统的Bootloader设计与实现

移动医疗系统的Bootloader设计与实现

来源:微智科技网
第11卷第21期2011年7月 l671—18l5(2011 121.52"15.05 科学技术与工程 Vo1.11 No.21 July 2011 Science Technology and Engineering ⑥201 1 Sci.Tech.Engng. 移动医疗系统的Bootloader设计与实现 陈姿羽 李伟鹏 苏秋玲 (南方医科大学生物医学工程学院,广州510515) 摘要启动引导程序(Bootloader)是嵌入式系统加电后运行的第一段软件代码。但是由于嵌入式系统的专用性和多样性, Bootloader的移植工作繁琐复杂。为了减少Bootloader移植工作的盲目性,加速产品开发进程,进行Bootloader分析总结,并针 对设计的基于嵌入式技术的移动医疗系统设计一种应用于其上的Bootloader。除基本内核镜像的引导与加载外,提供多接口 下载模式,且易于不同CPU的移植与扩展,具有一定的实际应用价值和参考意义。 关键词Bootloader 嵌入式 移动医疗系统 中图法分类号TP368.2 TP303; 文献标志码A 作为嵌入式系统的启动模块,Bootloader能够统 展需求,具有一定的现实意义及后续应用开发价值。 筹软硬件资源,使得资源最优配置,在一定程度上 决定了产品在市场上的成败【1j。在许多开发中,一 1移动医疗系统设计 般选择移植常用Bootloader,如u.boot、vivi、Blob等。 这些工具面向大部分硬件环境,支持多种嵌入式操 设计了一个移动医疗系统,移动终端上构建 作系统和处理器架构,功能设置高度灵活,设备驱 ARM.Linux+QT软件平台,能实现现场的生理数据 动丰富,但是代码较为庞大,生成的可执行文件也 实时采集、存储,并在检测异常时通过无线网络将 较大,易造成FLASH资源的浪费。同时由于它们启 结果和心电数据发送到医生和监控中心,医生和监 动流程机理和文件问依赖关系较为复杂,其灵活性 控中心人员可以及时的通过短信或者电话的形式 也不够高。 给予医嘱、分派急救等处理。系统包括嵌入式ARM 移动医疗作为一种新兴技术方向,改变了传统 平台、GPRS模块和监护三部分,嵌入式ARM平台 远程医疗的网络模式,也使医院的业务流程发生了 与GPRS模块共同构成移动终端,具体框架如图1 根本性改变,有利于加强医疗卫生、提高医疗质量、 所示。 改善医疗服务 J。智能化的终端设备是移动医疗 平台核心采用了韩国Samsung公司32位 系统应用实现的基本要求。本文基于嵌入式技术 ARM920T核RISC处理器s3c2410,实现数据采集和 设计开发了一个移动医疗系统,并以其移动终端设 处理。由ARM9处理器、数据采集模块、存储模块、触 备应用为切人点,通过对Bootloader的主要功能、启 摸显示模块等组成。其中,四线电阻式触摸屏做输入 动流程进行分析总结,提出适用于移动医疗系统的 设备,5.7英寸、320×240像素、256色的LCD做输出 Bootloader设计方案,能够实现系统内核镜像的引导 设备,二者结合作为触摸显示模块;(0—2.5)V的心 与加载,具有多接口下载模式,可针对不同硬件平 电模拟信号接人AIN0由¥3C2410内置的A/D转换 台修改移植,易于系统更新,能满足系统维护与扩 器完成数据采集;存储模块采用W86L388D SD卡控 制器芯片,最高时钟速率为25 MHz,兼容MMC卡,使 2011年4月8日收到 用前要先实现控制芯片的初始化。 第一作者简介:陈姿羽(1982一),女,湖南长沙人,硕士,助教,研究 方向:生物医学工程。E—mail:qingqingczy@126.tom。 5216 科学技术与工程 11卷 触摸显示模块 GPRS模块 监护 I 数 据 采 ARM9 .. —集 Q410 ’ ■ GPRS模块 / 模 块 数据存工储 模块 黛 移动终端 图1移动医疗系统设计框图 GPRS网络是目前国内覆盖范围最大的无线网 Stagel和Stage2 。Stagel用汇编语言编写,进行 络,且用户永远在线、按流量计费、通信成本低,因此, 与CPU、存储设备相关的初始化工作,如CPU运行 设计选择通过GPRS网络来实现ARM控制器与医院 的时钟频率、FLASH和内存的数据宽度、读/写访问 监护中心或者医生之问的数据交换。经过性能与成 周期和刷新周期、各种运行模式下的寄存器和堆 本的综合考虑,系统选用Wavecom公司的Q2403作 栈、中断系统等的设置,这一阶段一般依赖于体系 为GPRS模块。它集成了射频电路和GPRS基带处 结构;Stage2用C语言编写,实现一般流程及板级驱 理器,支持900/1 800双频,提供完整的GSM和GPRS 动的支持,由具体硬件环境决定。 无线接口;带有16 M Flash和2 M SRAM;支持数据、 语音、短消息等多种通信方式。SIM卡需根据实际数 3移动医疗系统的Bootloader设计实现 据流量申请开通合适的GPRS资费套餐。 监护部分主要是指医院的监护中心,它作为移 根据一般Bootloader分析,为实现移动医疗系 动医疗终端的数据接收端。终端接收异常心电数 统移动终端开发,在其Bootloader设计中包含以下 据由医生做出诊断再反馈给病人,同时可以随时通 几个问题的设计实现:(1)阶段设计;(2)开发控制 过GPRS模块短信或电话联系病人提出一些医嘱, 平台;(3)下载接口;(4)程序流程。 从而实现院外流动病人的监护和治疗。 3.1阶段设计 2一般Bootloader分析 Bootloader的启动过程可以分为单阶段和多阶 段两种。通常多阶段的Boofloader能提供更好的扩 一般基于ARM架构的嵌入式系统在上电或复 展性和可移植性。参考常用Bootloader设计,为方 位后,跳转到OxO0000000处开始执行其启动代码 便移植,并提高系统执行效率,在此可采用两阶段 Bootloader程序H J。Boofloader运行起来后为调用内 的启动过程,使得相同CPU只修改Stage2,不同 核准备好合适的环境,然后将内核镜像从存储介质 CPU只需修改Stagel。 (如NAND FLASH)上拷贝到RAM中,然后跳转到 3.2开发控制平台 内核的人口点去运行,从而启动操作系统。 串口是最简单也是最廉价的一种双机通讯设 常用的Bootloader启动系统可分为两个阶段: 备 ,因此选择它作为Bootloader的控制设备,实现 21期 陈姿羽,等:移动医疗系统的Bootloader设计与实现 主机与开发板的通信。为提高通讯速度,提高系统 开发速度,本文还设计添加了网络驱动。因此,开 发板与主机的通讯模式如图2所示。 3.3程序流程 以vivi Bootloader执行流程为参考,根据系统需 求,本文设计Boodoader的基本程序流程如图4 所示。 具体步骤如下: (1)设置程序入口点:用EXPORT伪指令定义 好程序入口点。 (2)设置中断向量表:当有中断或异常发生时, 处理器强制将PC指针指向中断向量表地址,执行 相应代码。设置的中断向量表如图3所示。实现代 码如下: 图2开发板与主机的通讯连接 EXPORT(一start) _start FIQ 0xl8 IRQ Reserved 0x14 Data b Reset b Undef (3)初始化CPU工作模式:设置到SVC模式工 作,在此模式下Bootloader具有对所有寄存器和所 有地址空间的操作权限,对应代码如下: mrs r0,cpsr Abort 0xl0 Prefetch OxOc Abort bic ro,r0, ̄0xdf OIT rl,10,#Oxd3 msr cpsr_all,rl 在此模式下,再实现看门狗定时器关闭、所有 中断的屏蔽及堆栈的初始化。 图3设置的中断向量表 图4设计的Bootloader程序流程 科学技术与工程 11卷 (4)初始化系统时钟:通过Bootloader时钟设 置为各个外设模块提供合适的时钟,将FCLK设为 200 MHz,分频比为FCLK:HCLK:PCLK=1:2:4,注 意的是还应将模式修改为异步总线模式再设置 如下: usercommandt usbcmd ={ “download”, usb-_Commandusb, 频率: nlrc p15,0,rl,cl,cO,0@read ctrl register orr rl,rl,#Oxc0000000@Asynchronous mer p15,0,rl,cl,cO,0@write ctrl register (5)初始化各关键外设:这边主要是提供调试 下载接口的基本设置。 (6)初始化用户程序执行环境:到此需重新设 置中断向量表,实现C语言程序运行所需环境变量 的设置,如RO、RW及zI这些域的设置。 (7)跳转到c程序入口:在此,首先需要初始 化好控制设备,方便和用户的I/O操作。再通过一 个函数armboot()提供所需的函数入口点,从而进 一步实现用户功能。 (8)板级初始化:这一部分属于stage2的内容, 通过各种c语言函数实现,如board—init()设置 GPIO、console—init()设置启动信息等。最后调用函 数boot()进入shell界面或者加载操作系统。 3.4下载接口 在嵌入式开发中,很重要的一项是将系统内 核、文件系统、用户应用程序移植到硬件平台上,而 它们的实现需要合适的下载接口。在板级初始化 完成后进人命令行操作调用相应驱动进行下载操 作。嵌入式开发中常用的下载接口主要有JTAG接 口、串口、以太网接口、USB接口等,其中JTAG接口 主要用于前期调试。本文设计采用串口下载、以太 网下载及USB下载三种下载方法。串口下载有众 多参考,这里以USB接口下载实现为例,模仿vivi Bootloader命令行添加模式实现以太网接口下载命 令和USB下载命令: 先添加驱动实现源文件(从网上搜索下载或编 写适合自己平台的),本文根据平台硬件配置,参考 网上流传的相应驱动,为设计的Bootloader编写添 加移动医疗系统平台的USB驱动种AX88796网卡 驱动,最后模仿vivi Bootloader命令行添加方式实现 下载内置命令。其中下载命令usb—download定义 NULL, “usbdownload一一一download files to nandflash using USB” }; 再通过add—command()函数将命令添加进命 令操作链表实现操作目的。 4讨论 设计Bootloader需对硬件资源与所用操作系统 有较深的理解,才能根据需要设计,去除常用Boot- loader中不必要的系统功能,从而提高程序的执行 效率和稳定性。本文根据设计的基于嵌入式的移 动医疗系统具体硬件平台,实现了其专用的Boot— loader,除基本内核镜像等加载外,提供多种接口的 下载命令,提高了开发速率;提供串口和网络两种 控制台操作方式,提高了主机与目标机间通讯速度; 为提高设计的Bootloader的实用性,采用两阶段设计, 并为它们设置合适的布局,方便后续根据不同平台的 移植;设计的Bootloader具有较强的专用性,代码量小, 生成的可执行代码仅有126 kb,减少了FLASH的空间 浪费。设计的Boofloader可大大提高基于嵌人式技术 的移动医疗系统开发进度,具有很好的应用价值。 参考文献 1罗磊,戴学丰,刘树东.基于ARM9&linux系统的bootloader设 计.微计算机信息(嵌入式与SOC),2008;24(5—2):133— 134、238 2刘国伟.刘长兴.移动医疗系统临床应用的必要性.实用医学杂 志,2010;(2):l82—183 3周笑,李明,b佳俊,等.移动远程医疗监护系统的设计与实 现.计算机工程,2010;(10):25i—253 4单片机学习网.Study ARM step by step.http://www.meustudy. com.2005.3-27 5于云松,由德凯,孙其芳.基于¥3C2440的Bootloader的设计与实 现.甘肃科技,2008;24(15):24—26 6陈 为.基于ARM内核的小型化Boofloader的设计与实现.武 汉:武汉工程大学,2009 21期 陈姿羽,等:移动医疗系统的Bootloader设计与实现 5219 Design and Implementation of Bootloader for M-health System CHEN Zi・yu,LI Wei-peng,SU Qiu—ling (School of Biomedical Engineering,Southern Medical University,Guangzhou 510515,P.R.China) [Abstract]The Bootloader is the first run software code of embedded systems after power on.Due to the speciifc and diversity of embedded systems,it is too complex to complete Bootloader transplantation.In order to reduce the blindness of Boodoader transplantation and accelerate product development process,as for a M—health system based on embedded technology,Bootloader is analyzed and summarized.After that design an Bootloader for the applica— tion,which can provide multi—interface download means besides boot and loading support of kernel image,also easy to maintain and expand for different CPU,has a certain practical and reference for development. [Key words] Bootloader embedded mobile medical systems (上接第5214页) Scheme and Application on Digital Fingerprinting Based on Random Sequence and ECC HUANG Xin,Lt3 Hong—wei (Engineering College of CAPF,Xi’an 710086,P.R.China) [Abstract] Because of development of office automation,the importance of secret document protection is becom— ing urgent.The disadvantages of traditional protecting techniques based on cryptography emerged.They can not pro- tect documents after decryption or avoid misdeed of staff.Digital fingerprinting becomes a supplement.User finger- prints are embedded in order to strengthen information controllable.When illegal copy appeared,the distributor can track offenders SO that document protection more effective.Here ECC is used in fingerprint code,the conventional code is used in the under layer.Then use convolution encoder to deal with the fingerprint sequences and get the out— put as the final fingerprint for users.In this way,the fingerprints are more robust and mistake rate is reduced. [Key words] secret e—document protection digital ifngerprinting collusion ECC 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务