一种基于国产飞腾处理器的电池状态控制方法技术

技术编号:14555558 阅读:74 留言:0更新日期:2017-02-05 04:48
本发明专利技术公开了一种基于国产飞腾处理器的电池状态控制方法,目的是提供对智能电池各种信息实时获取和对电池充放电状态控制的方法。技术方案是先构建由Smart Battery、飞腾1000A处理器、电池状态控制软件和电源管理应用程序构成的Smart Battery电池状态控制系统;电池状态控制软件按照周期T通过访问LTC4100相关的寄存器获取电池状态信息,将电池状态信息写入proc文件系统;电源管理应用程序设置一个充电电量上限阈值和一个放电电量下限阈值;电源管理应用程序按照周期T从Proc文件系统中获取结构化电池状态信息,并进行Smart Battery电池的充、放电控制。采用本发明专利技术可以以较低成本实施的基于飞腾处理器平台的Smart Battery电池状态控制,兼容性、适应性、灵活性和可扩展性好。

Battery state control method based on domestic high speed processor

The invention discloses a battery state control method based on a domestic high speed processor, which aims to provide the real-time acquisition of various information of the intelligent battery and the control method for the state of charge and discharge of the battery. The technical scheme is first constructed by Smart Battery, soar 1000A processor, battery state control Smart Battery battery state control system and power management applications; battery state control software in accordance with the cycle of T LTC4100 by visiting the relevant register access battery status information, the battery status information into the proc file system; power management applications set a limit charging power threshold and a lower threshold discharge power; power management applications in accordance with the cycle of T from the Proc file system access to structured battery status information, charge and discharge control and Smart Battery battery. The invention can be used to lower the cost of implementation based on Smart Battery battery state Feiteng platform processor control, compatibility, adaptability, flexibility and extensibility.

【技术实现步骤摘要】

本专利技术涉及电源管理领域,具体涉及一种基于国产飞腾处理器的加固式便携计算机实现电池状态控制的方法。
技术介绍
电池状态控制方法主要实现电池实时信息获取和电池充放电状态设置两个功能。电池实时信息获取是指操作系统内核从电池各个寄存器获取电池的实时状态参数,并将其写入用户空间;电池充放电状态设置是指用户空间的应用程序根据电池实时信息设置电池的充放电状态。该方法一般用于实现便携计算机的电池信息获取和控制,从而支撑电源管理相关功能的实现。电池实时信息一般包括:当前是否连接电源;电池充放电状态,当前电池电量信息,充电状态下充满电池的剩余时间;放电状态下电池剩余工作时间等。电池实时信息一般保存在电池寄存器中,由电池实时更新。电池的充放电状态设置是指用户可以根据需要设置充电上限阈值和放电下限阈值,当处于充电状态的电池电量达到充电上限阈值时,电池停止充电,当处于放电状态且连通电源的电池电量低于放电下限阈值时,电池由放电状态改为充电状态。目前,基于国产飞腾处理器平台的便携式计算机处于起步研制阶段。基于飞腾处理器平台的非加固式便携式计算机已经实现了一种基于可编程的片上系统(ProgrammedSystemonChip,PSOC)的电池信息获取功能。其电池信息获取主要基于PSOC硬件,该方法中电池通过硬件PSOC与国产飞腾处理器的I2C(Inter-IntegratedCircuit,I2C)控制器相连,电池信息通过PSOC芯片自动获取并输出给驱动程序,由驱动程序写入用户空间。SmartBattery是一款用于加固式便携式计算机的智能电池。与传统用于非加固式飞腾便携计算机的基于PSOC的普通电池相比,具有更高的可靠性和环境适应性。如图1中硬件逻辑结构部分所示,SmartBattery由锂聚合物充电电池、用于供电的电源适配器、微控单元(MicroControllerUnit,MCU)和电池管理芯片LTC4100四个核心构件组成。锂聚合物充电电池是将化学能转换为电能的供电装置,电源适配器是由电源变压器和整流电路组成的供电电源变换设备。微控单元MCU控制锂聚合物充电电池放电,并控制电源适配器对锂聚合物充电电池进行充电。电池管理芯片LTC4100的主要功能是支撑内核空间中驱动程序电池状态控制软件访问锂聚合物充电电池相关寄存器,实现对电池状态信息的实时获取;对微控单元MCU何种情况下进行充放电进行决策。由于加固与非加固电池物理结构差异较大,导致非加固式便携计算机的电池无法用于加固式便携计算机,并且由于在硬件设计和状态控制方式等方面都存在较大的差异性,导致基于PSOC的电池状态控制方案无法直接使用在SmartBattery的电池状态控制方案中。例如:在底层硬件设计方面,PSOC方案中处理器仅与PSOC通过I2C总线互连,SmartBattery方案中处理器直接与智能电池相连;在信息获取方面,PSOC方案的获取实时信息代码和通过代码获取的实时信息都保存在片上系统(SystemonChip,SOC)中,而SmartBattery中没有片上系统,表征电池状态的各种原始数据需要被实时获取至电池信息获取驱动软件中;在状态控制方面,PSOC方案不支持应用程序对电池充放电状态的设置。因此需要设计一种新方法支持在加固便携式计算机使用智能电池。综上所述,国产飞腾处理器平台目前无法支持SmartBattery电池状态控制,严重制约了国产飞腾处理器在加固式便携计算机进行电源管理功能的实现,并会影响到基于飞腾平台加固便携计算机的应用和推广。
技术实现思路
本专利技术要解决的技术问题是,提供对智能电池各种信息实时获取和对电池充放电状态控制的方法。该方法实时获取非结构化的电池信息至驱动软件中并进行转换处理,非结构化的电池信息经过转换处理后变为结构化的信息,并被写入支持内核空间与用户空间通信的文件系统中。电池信息被结构化后,用户空间电池管理应用程序无需修改代码就可以直接访问电池信息,同时应用程序可以根据用户特定需求设置电池充放电状态转换的阈值。该方法具有较好兼容性,较高适应性、灵活性和可扩展性,是一种以较低成本实施的基于飞腾处理器平台的SmartBattery电池状态控制方法。本专利技术技术方案包括以下步骤:第一步,构建SmartBattery电池状态控制系统,它由SmartBattery、飞腾1000A处理器、电池状态控制软件和电源管理应用程序四个部分构成。SmartBattery与飞腾1000A处理器通过系统管理总线(SystemManagementBus,SMB)的时钟线和数据线相连;飞腾1000A处理器通过执行电池状态控制软件,实现对SmartBattery寄存器的访问,获取电池状态信息;电源管理应用程序通过对电池状态信息、充电电量上限阈值和放电电量下限阈值进行决策实现对电池充放电状态的控制。如图1硬件逻辑结构部分所示,SmartBattery的锂聚合物充电电池、电源适配器、微控单元MCU和电池管理芯片LTC4100等四个核心构件作为飞腾1000A处理器的从设备,通过SMB时钟线和SMB数据线连接至FT1000A处理器内置AMBA(AdvancedMicrocontrollerBusArchitecture)总线下I2C控制器第四个I2C接口(即I2C接口3)。实践证明飞腾处理器I2C总线与X86、PowerPC、ARM(AdvancedReducedMachine)等架构处理器的I2C总线相比,信号能力偏弱。因此,与X86、PowerPC和ARM等架构处理器的I2C总线设备连接方案不同,SmartBattery电池状态控制系统中新增一个3.3V4.7KΩ电阻与SmartBattery并联,保证了信号由低到高跃升的斜率足够大,可以有效识别信号所有上升沿。飞腾1000A处理器通过运行电池状态控制软件,对电池管理芯片LTC4100进行控制和访问,实现电池实时信息获取和电池充放电状态控制。电池状态控制软件是位于操作系统内核空间的驱动程序,由I2C驱动子模块、驱动与设备匹配子模块、电池信息封装子模块和核内外通信驱动子模块构成,如图1中软件逻辑结构部分所示。I2C驱动子模块负责将SmartBattery的锂聚合物充电电池、电源适配器、微控单元MCU和电池管理芯片LTC4100注册为I2C控制器的从设备,并将设备注册信息传递给驱动与设备匹配子模块。设备注册信息包括设备识别号(即设备ID)、从设备地址和寄存器偏移。设备识别号是设备在驱动程序中的唯一标识。从设备地址是I2C协议中规定本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/CN105511581.html" title="一种基于国产飞腾处理器的电池状态控制方法原文来自X技术">基于国产飞腾处理器的电池状态控制方法</a>

【技术保护点】
一种基于国产飞腾处理器的电池状态控制方法,其特征在于包括以下步骤:第一步,构建Smart Battery电池状态控制系统,它由Smart Battery、飞腾1000A处理器、电池状态控制软件和电源管理应用程序四个部分构成;Smart Battery与飞腾1000A处理器通过系统管理总线SMB的时钟线和数据线相连;电源管理应用程序通过对电池状态信息、充电电量上限阈值和放电电量下限阈值进行决策实现对电池充放电状态的控制;Smart Battery的锂聚合物充电电池、电源适配器、微控单元MCU和电池管理芯片LTC4100作为飞腾1000A处理器的从设备,通过SMB时钟线和SMB数据线连接至FT1000A处理器内置AMBA总线下I2C控制器第四个I2C接口即I2C接口3;Smart Battery电池状态控制系统中新增一个电阻与Smart Battery并联;飞腾1000A处理器通过运行电池状态控制软件,对电池管理芯片LTC4100进行控制和访问,实现电池实时信息获取和电池充放电状态控制;电池状态控制软件是位于操作系统内核空间的驱动程序,由I2C驱动子模块、驱动与设备匹配子模块、电池信息封装子模块和核内外通信驱动子模块构成;I2C驱动子模块负责将Smart Battery的锂聚合物充电电池、电源适配器、微控单元MCU和电池管理芯片LTC4100注册为I2C控制器的从设备,并将设备注册信息传递给驱动与设备匹配子模块;设备注册信息包括设备识别号即设备ID、从设备地址和寄存器偏移,设备识别号是设备在驱动程序中的唯一标识,从设备地址是I2C协议中规定的由7位地址和一位R/W读写位组成的器件地址,寄存器偏移是从设备地址上寄存器的相对地址;FT1000A处理器通过设备注册信息中从设备地址识别Smart Battery所在的I2C接口,并通过寄存器偏移访问Smart Battery中的寄存器;驱动与设备匹配子模块定义了I2C驱动支持的设备识别号和驱动操作函数;I2C驱动支持的设备识别号用于匹配I2C驱动子模块中注册的设备识别号,如果两个设备识别号匹配,表示当前的I2C驱动支持I2C设备驱动子模块注册的Smart Battery设备;驱动操作函数是控制电池信息需要调用的基本函数,包括打开、关闭、读、写以及输入输出控制函数;打开函数用于打开文件,关闭函数用于关闭文件,读函数用于读文件,写函数用于写文件,输入输出控制函数用于操作系统内核空间和用户空间控制权的转换,用于支持电源管理应用程序读取用户空间的Proc文件系统中的结构化电池信息,在驱动与设备匹配子模块接收来自于I2C驱动子模块的设备注册信息并对设备识别号比对匹配后,向电池信息封装子模块发送驱动操作函数信息供其调用;电池信息封装子模块负责电池信息的获取和封装;电池信息封装子模块从驱动与设备匹配子模块接收操作函数信息,调用读函数从电池管理芯片LTC4100周期性实时获取非结构化电池状态信息,对非结构化电池状态信息进行结构化处理和转换,封装形成上层应用程序可直接识别读取的结构化电池状态信息,并将结构化电池状态信息发送给核内外通信子模块;非结构化电池状态信息是指Smart Battery寄存器中十六进制形式的数值,结构化电池状态信息是指用用户理解的格式化信息;核内外通信子模块从电池信息封装子模块接收结构化电池状态信息,将结构化电池状态信息采用Smart Battery目录及文件的形式写入用户空间的Proc文件系统,供用户空间的电源管理应用程序读取结构化电池状态信息;电源管理应用程序由电池信息读取模块、大小端转换模块、充放电决策模块、充放电状态设置模块构成;电池信息读取模块负责实时从Proc文件系统中读取结构化电池状态信息;大小端转换模块将从电池信息读取模块得到的大端字节序的结构化电池状态信息转换为小端字节序,并将小端字节序的结构化电池状态信息发送给充放电决策模块;充放电决策模块根据结构化电池状态信息进行决策,通过核内外通信子模块向电池管理芯片LTC4100发出指令,LTC4100继续向微控单元MCU发送指令,让电池切换为放电状态、充电状态或者不充电不放电状态;充放电状态设置模块负责接收用户对电池充放电状态改变的阈值,并将阈值传递给电池状态控制软件;第二步,电池状态控制软件按照周期T通过访问Smart Battery的电池管理芯片LTC4100相关的寄存器获取非结构化电池状态信息,对非结构化电池状态信息进行结构化处理后得到结构化电池状态信息,将结构化电池状态信息写入proc文件系统Smart Battery目录下的文件中;同时电源管理应用程序按照周期T从Proc文件系统Smart Battery目录下的文件中获取结构化电池状态信息,并进行Smart Battery电池的充、放电控制:2.1电池状态控制软件...

【技术特征摘要】
1.一种基于国产飞腾处理器的电池状态控制方法,其特征在于包括以下步骤:
第一步,构建SmartBattery电池状态控制系统,它由SmartBattery、飞腾1000A处
理器、电池状态控制软件和电源管理应用程序四个部分构成;SmartBattery与飞腾1000A
处理器通过系统管理总线SMB的时钟线和数据线相连;电源管理应用程序通过对电池状
态信息、充电电量上限阈值和放电电量下限阈值进行决策实现对电池充放电状态的控制;
SmartBattery的锂聚合物充电电池、电源适配器、微控单元MCU和电池管理芯片
LTC4100作为飞腾1000A处理器的从设备,通过SMB时钟线和SMB数据线连接至
FT1000A处理器内置AMBA总线下I2C控制器第四个I2C接口即I2C接口3;Smart
Battery电池状态控制系统中新增一个电阻与SmartBattery并联;飞腾1000A处理器通过
运行电池状态控制软件,对电池管理芯片LTC4100进行控制和访问,实现电池实时信息
获取和电池充放电状态控制;
电池状态控制软件是位于操作系统内核空间的驱动程序,由I2C驱动子模块、驱动
与设备匹配子模块、电池信息封装子模块和核内外通信驱动子模块构成;
I2C驱动子模块负责将SmartBattery的锂聚合物充电电池、电源适配器、微控单元
MCU和电池管理芯片LTC4100注册为I2C控制器的从设备,并将设备注册信息传递给
驱动与设备匹配子模块;设备注册信息包括设备识别号即设备ID、从设备地址和寄存器
偏移,设备识别号是设备在驱动程序中的唯一标识,从设备地址是I2C协议中规定的由7
位地址和一位R/W读写位组成的器件地址,寄存器偏移是从设备地址上寄存器的相对地
址;FT1000A处理器通过设备注册信息中从设备地址识别SmartBattery所在的I2C接口,
并通过寄存器偏移访问SmartBattery中的寄存器;
驱动与设备匹配子模块定义了I2C驱动支持的设备识别号和驱动操作函数;I2C驱
动支持的设备识别号用于匹配I2C驱动子模块中注册的设备识别号,如果两个设备识别
号匹配,表示当前的I2C驱动支持I2C设备驱动子模块注册的SmartBattery设备;驱动
操作函数是控制电池信息需要调用的基本函数,包括打开、关闭、读、写以及输入输出
控制函数;打开函数用于打开文件,关闭函数用于关闭文件,读函数用于读文件,写函
数用于写文件,输入输出控制函数用于操作系统内核空间和用户空间控制权的转换,用
于支持电源管理应用程序读取用户空间的Proc文件系统中的结构化电池信息,在驱动与
设备匹配子模块接收来自于I2C驱动子模块的设备注册信息并对设备识别号比对匹配后,

\t向电池信息封装子模块发送驱动操作函数信息供其调用;
电池信息封装子模块负责电池信息的获取和封装;电池信息封装子模块从驱动与设
备匹配子模块接收操作函数信息,调用读函数从电池管理芯片LTC4100周期性实时获取
非结构化电池状态信息,对非结构化电池状态信息进行结构化处理和转换,封装形成上
层应用程序可直接识别读取的结构化电池状态信息,并将结构化电池状态信息发送给核
内外通信子模块;非结构化电池状态信息是指SmartBattery寄存器中十六进制形式的数
值,结构化电池状态信息是指用用户理解的格式化信息;
核内外通信子模块从电池信息封装子模块接收结构化电池状态信息,将结构化电池
状态信息采用SmartBattery目录及文件的形式写入用户空间的Proc文件系统,供用户空
间的电源管理应用程序读取结构化电池状态信息;
电源管理应用程序由电池信息读取模块、大小端转换模块、充放电决策模块、充放
电状态设置模块构成;
电池信息读取模块负责实时从Proc文件系统中读取结构化电池状态信息;
大小端转换模块将从电池信息读取模块得到的大端字节序的结构化电池状态信息转
换为小端字节序,并将小端字节序的结构化电池状态信息发送给充放电决策模块;
充放电决策模块根据结构化电池状态信息进行决策,通过核内外通信子模块向电池
管理芯片LTC4100发出指令,LTC4100继续向微控单元MCU发送指令,让电池切换为
放电状态、充电状态或者不充电不放电状态;
充放电状态设置模块负责接收用户对电池充放电状态改变的阈值,并将阈值传递给
电池状态控制软件;
第二步,电池状态控制软件按照周期T通过访问SmartBattery的电池管理芯片
LTC4100相关的寄存器获取非结构化电池状态信息,对非结构化电池状态信息进行结构
化处理后得到结构化电池状态信息,将结构化电池状态信息写入proc文件系统Smart
Battery目录下的文件中;同时电源管理应用程序按照周期T从Proc文件系统SmartBattery
目录下的文件中获取结构化电池状态信息,并进行SmartBattery电池的充、放电控制:
2.1电池状态控制软件的I2C驱动子模块通过调用操作系统中I2C设备注册函数向飞
腾1000A处理器的I2C控制器注册SmartBattery设备信息,包括设备ID、从设备地址和
寄存器偏移,并将该SmartBattery设备注册信息发送给驱动与设备匹配子模块;
2.2电池状态控制软件的驱动与设备匹配子模块从I2C驱动子模块获得设备ID、从
设备地址和寄存器偏移,并将设备ID与驱动与设备匹配子模块自身所声明支持的设备ID

\t进行匹配,具体步骤如下:
2.2.1如果设备ID与驱动与设备匹配子模块自身所声明支持的设备ID不一致,则表
示当前操作系统中没有支持该SmartBattery电池设备的驱动,转第三步;
2.2.2如果设备ID与驱动与设备匹配子模块自身所声明支持的设备ID一致,驱动与
设备匹配子模块定义用于实现电池实时信息获取和电池充放电状态设置的驱动操作函
数,并将驱动操作函数和I2C设备注册信息发送给电池信息封装子模块,执行2.3步;
2.3电池状态控制软件的电池信息封装子模块按2.3.1~2.3.3的步骤从驱动与设备匹配
子模块接收操作函数信息、I2C设备注册信息,按照周期T从电池管理芯片LTC4100中
获取非结构化电池状态信息,同时将非结构化电池状态信息转换为结构化电池状态信息,
并将结构化电池状态信息写入proc文件系统中;同时,电源管理应用程序按2.3.4~2.3.7
的步骤从Proc文件系统中获取结构化电池状态信息,并进行SmartBattery电池的充、放
电控制,方法是:
2.3.1电池信息封装子模块根据接收到的操作函数信息以及I2C设备注册信息,获取
非结构化电池状态信息;
2.3.2电池信息封装子模块将非结构化电池状态信息转换为结构化电池状态信息,并
将结构化电池状态信息发送给核内外通信驱动子模块;
2.3.3核内外通信驱动子模块通过写文件的方式将结构化电池状态信息写入到Proc文
件系统中,本周期结束,转步骤2.3.1;
2.3.4电源管理应用程序接收用户输入,设置充电电量上限阈值和放电电量下限阈值;
2.3.5电源管理应用程序的电池信息读取模块从Proc文件系统的SmartBattery目录下
的文件中获取大端字节序的结构化电池状态信息;
2.3.6大小端转换模块接收大端字节序的结构化电池状态信息,将其转换为小端字节
序的结构化电池状态信息,并将小端字节序的结构化电池状态信息发送给充放电决策模
块;
2.3.7充放电决策模块...

【专利技术属性】
技术研发人员:史佩昌刘惠孔金珠邵立松任怡阳国贵蒋林轩夏若冰刘永
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1