《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 业界动态 > 基于MSP430F1611和SD卡的心电数据存储系统的低功耗设计

基于MSP430F1611和SD卡的心电数据存储系统的低功耗设计

2009-06-23
作者:付秀泉,陈 杭,叶树明

  摘 要: 系统基于高集成度、低功耗的MSP430F1611单片机,利用SPI总线与SD卡通信。在单片机RAM较小的情况下,平衡SD卡存储速度、所需RAM以及系统功耗,设计优化的FAT16文件系统,实现对SD卡的数据写入。将该设计应用于便携式心电监护仪上,完全满足48 h 256 Hz心电采样时间和频率的要求,实现了对心电数据的实时保存。
  关键词: 低功耗;SD卡;文件系统;MSP430F1611;心电

 

  心电监护仪是诊断心血管疾病的重要仪器之一。通常的心电监护仪多为对短程心电信号的分析,但许多心血管疾病都是偶发的,所以随着监护时间的延长,疾病的发现率将大大提高[1]。该监护仪使用MSP430F1611单片机和SD卡建立文件系统来存储心电信号,可以方便地实现大容量的心电信号存储和读取。
  图1是便携式心电监护仪的原理框图,仪器需要满足以下要求:(1)使用2节5号电池,总容量不大于2000mAh;(2)待机电流小于0.4mA,待机时间大于4000h;(3)连续工作电流小于60 mA,连续工作48h以上。

 


  由于心电采集和显示要求较高的处理能力和运行性能,占据了大量的RAM和功耗,因而在单片机RAM较小的情况下,为了满足以上要求,必须研究SD卡存储速度、所需RAM以及功耗的关系。
1 SD卡存储模块的功耗分析
  通常,在完成一个任务时,仪器所需的能量E可以表示为:
  
Vk、Ik分别为电池在第k个时间段内的电压和输出电流,可以得到电路在一定时间 T内的平均电流消耗(假设 V不变):
    

  图2是监护仪进行数据存储时的电流消耗简图,系统在t1段进入待机状态,等待采集数据满,进行一次记录,I1主要由微处理器(MPU)待机模式的功耗所决定;t2段为MPU在SD卡的FAT表中查找下一操作簇和下一操作扇区;在t3段,MPU把数据通过SPI总线发送到SD卡进行存储,并查询SD卡是否存储完毕, t3相对来说是固定的。t2、I2与文件系统设计有关,同时,t2的改变也会影响到t1


  对于SD卡来说,完成一定量的数据操作所需功耗一定,但在SD卡工作的同时,DC-DC和MPU也在工作,t2越长,这些器件所消耗的能量也越多,SD卡存储速度与功耗之间不会是简单的线性关系。因此,设计最优化的文件系统、缩小FAT寻址时间,可以在完成任务的基础上,使功耗达到最优。
2 SD卡模块的硬件组成
  SD卡数据存储系统主要由电源、微处理器和SD卡接口电路组成。
  (1)电源模块。系统采用了两套供电模式: MSP430采用电池直接供电,而接口电路则不需要一直工作。因此选用了TI公司的升/降压DC-DC芯片TPS61070,将输入电压升高到一定电压,再使用SIPEX公司的SPX3819-3.3把电压稳定在3.3 V。它具有外接元件简单,转换效率高,带关断功能等特点,原理图见图3。


  (2)微处理器。可用于低功耗系统的微处理器有多种,表1中对比了3款典型低功耗微处理器的功能和性能。可见,MSP430F1611具有较好的低功耗性能,可以在1.8~3.6 V电压下工作,能更好地适应电池直接供电的电压范围。MSP430F1611有活动模式(AM)和5种低功耗模式(LPM0、LPM1、LPM2、LPM3和LPM4),实现低功耗操作的灵活性;集成12位DAC。因此,以MSP430为核心设计的采集控制电路,可以满足高性能和低功耗要求[2]


  (3)接口电路。SD卡有9个引脚,支持两种串行数据传输协议,即SD(Multimedia Card)模式和SPI(Serial Peripheral Interface)模式[3]。在SPI模式中,通过4条信号线完成数据的传输。这4条信号线分别是时钟SDCLK、数据输入SDDI、数据输出SDDO和片选SDCS。MSP430通过P5.4口输出SDEN控制三极管的关断,在仪器待机时切断接口电路的供电,降低系统功耗。MSP430与SD卡的接口电路如图4所示。


3 FAT16文件系统的设计
  文件系统是应用程序和存储介质之间的一种协议,其主要功能是对文件进行管理。FAT16文件系统的结构包含分区引导扇区(DBR)、 文件分配表(FAT)、 文件目录表(FDT)以及数据区(DATA)四个部分[4],如图5所示。


  引导扇区位于物理结构的第一扇区,大小为512 B,包括一个引导程序和BPB(BIOS Parameter Block)参数块。BPB参数块记录本分区的起始扇区、结束扇区、文件存储格式、介质描述符、根目录项数、FAT个数、保留扇区数、分配单元的大小等重要参数。根据保留扇区的数目可知FAT表的位置(分区起始扇区数+保留扇区数)。根据FAT的个数以及每个FAT表占用的扇区数,即可算出FDT的位置(FAT表位置+FAT表个数×FAT表所占扇区数)。FDT中保存着目录项,目录项中的文件首簇号就是读写文件的入口[5]
  根据以上分析,针对实时数据采集系统可以简化文件系统的设计,仅实现对文件的写操作,而把文件创建、文件删除等其他操作交给上位机完成。
  每采集到一个扇区大小(512 B)的数据,便进行一次写操作。写操作的具体流程如图6。


  从图6可以看出,在未操作到簇尾时,对扇区的操作是不进行FAT寻址操作的,这与普通的FAT16每次寻址相比,大大简化了操作流程,加快了操作速度。在操作到簇尾时,设计使用一定大小的RAM来预读取一个扇区或几个扇区的FAT表,从而可以直接从RAM中寻找下一操作簇号。这样设计的优点为:如果文件在物理上是连续存储的,则它的FAT表也是连续的,这样大多数情况下主机便可直接从RAM中获取下次操作簇号,从而极大地减少了主机与SD卡通信的次数(一个扇区的FAT表便可记录下256个簇号),加快了每次操作的速度,也减少了不必要的功耗。
4 速度及功耗测试
  设定系统待机状态时,MSP430工作于LPM3(RTC服务开启,主频:32 kHz),系统任务处理状态时工作于活动模式(主频:8 MHz)。
  表2为按照设计流程(即每簇寻址)、在使用不同大小RAM的情况下系统功耗的实际测试结果。测试条件为:电源电压VBAT=2.787 V,温度25 ℃,测试记录20 M心电数据(三通道心电信号采集,采样率256 Hz)。通过测试20次求平均值,计算得出最终数据。

 


  平均电流随RAM大小变化的情况如图7。从图中可以看出,随着RAM的增大,平均电流逐渐减小,功耗随之降低。而且从图中不难发现:不使用RAM(0B)和使用RAM的平均电流相差很大,但RAM大小从512 B增加到2 KB的过程中,平均电流并未显著减小。又由于单片机的RAM都较小(MSP430F1611的RAM只有10KB),在整个系统中,心电采集处理模块对RAM的使用量较大。综合以上分析,最终选择使用RAM的大小为512B。


      表3列出了在使用512 B RAM的情况下,不同寻址方式对功耗的影响。测试条件为:电源电压VBAT=2.787 V,温度25 ℃,测试记录20 M心电数据(三通道心电信号采集,采样率256 Hz)。通过测试20次求平均值,计算得出最终数据。从表3中可以看出每簇寻址的平均电流远小于其他两种寻址方式,可以极大地降低存储模块的功耗。


      在设计中,主要采取了两种方式实现低功耗:(1)采用高集成度、低功耗的MSP430F1611为核心微处理器,该器件具有多种低功耗的休眠模式;(2)FAT文件系统的设计优化,具体设计中针对不同RAM大小和不同的寻址方式,经过测试、计算和对比,选择了合适的软硬件组合,得出最优结果。这将数据存储模块的功耗大大降低,简化了便携式心电监护仪其他部分的功耗设计。


参考文献
[1] 段勇.基于MSP430单片机的SD卡读写[J].生物医学工程研究,2007,26(4):347-350.
[2] 周乐川.基于MSP430F1611的自容式叶绿素仪的采集控制电路的低功耗设计[J].电子器件,2008,31(3):864-867.
[3] 聂虹.SPI模式下MMC卡的读写机制[J].单片机与嵌入式系统应用,2007(7):45-47.
[4] 李宏佳.基于ARM和SD卡的嵌入式文件系统研究与设计[J].电子设计应用,2007(7):101-103.
[5] 海深.嵌入式文件系统的实现及性能改进.合肥工业大学学报(自然科学版)[J],2008,30(3):265-267.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。