CN103176421B - 一种控制器内map数据在线标定方法 - Google Patents

一种控制器内map数据在线标定方法 Download PDF

Info

Publication number
CN103176421B
CN103176421B CN201310129770.1A CN201310129770A CN103176421B CN 103176421 B CN103176421 B CN 103176421B CN 201310129770 A CN201310129770 A CN 201310129770A CN 103176421 B CN103176421 B CN 103176421B
Authority
CN
China
Prior art keywords
map
block
calibration
mcu
ram
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310129770.1A
Other languages
English (en)
Other versions
CN103176421A (zh
Inventor
王洪
赵旭冉
吴迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huayue Drilling Shandong Craft Jewelry Co ltd
Original Assignee
Hengchi Science & Technology Co Ltd Zhenjiang
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hengchi Science & Technology Co Ltd Zhenjiang filed Critical Hengchi Science & Technology Co Ltd Zhenjiang
Priority to CN201310129770.1A priority Critical patent/CN103176421B/zh
Publication of CN103176421A publication Critical patent/CN103176421A/zh
Application granted granted Critical
Publication of CN103176421B publication Critical patent/CN103176421B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种控制器内MAP数据在线标定方法,属于控制器内MAP数据在线标定领域。MCU的部分核心专用于实时事件处理,部分核心负责和标定工具的通信、标定过程实施和MAP的查表,MCU的片上Flash具有2个以上的Block,实时事件处理核心的代码存储在独享的一个Block中,MAP存储在该Block之外的Block中,实现标定MAP时不影响控制器实时工作的性能。避免在外部RAM中对MAP数据进行修改导致的电磁兼容恶化,简化了系统,节约了MCU管脚资源。普适于片上RAM偏小的多核微控制器的MAP在线标定。

Description

一种控制器内MAP数据在线标定方法
技术领域
本发明涉及一种控制器内MAP数据在线标定方法,适用于片上RAM偏小的多核微控制器的MAP在线标定。
背景技术
在一些控制系统中其系统运行参数和效果难以预先进行计算和估计,需要通过实际运行对控制数据等进行修正和固化。对这类系统的控制通常在控制器中将控制数据以MAP的形式存储在可编程的存储区中,由标定人员在实际运行过程中对这些数据进行在线的标定在控制达到预期目标后对数据进行更新和固化。现在多数的微控制器都带有片内的FLASH或EEPROM,可以进行在线的编程。由于微控制器对片内FLASH或EEEPROM进行编程前必须先进行擦除,擦除需要加载高电压,加载高压的整块FLASH区(block)将不能被微控制器访问,为防止在编程期间数据访问错误MCU需关闭中断,停止事件响应。一块FLASH区域的擦除通常需要上百毫秒,对发动机控制这类对实时性要求很高的系统关闭中断100毫秒足以让发动机熄火,这将失去在线标定的意义。这类系统目前在线的标定方法是在微控制器之外增加一个RAM(因为片上RAM不够大)将MAP从FLASH中全部据拷入外部的RAM中,在外部RAM中对数据进行修改,在掉电或接收到指令时再将相关数据反写到微控制器的FLASH中。但这样占用了大量的MCU管脚资源,而且会使系统的电磁兼容性恶化,并增加系统复杂程度和成本。
发明内容
为了克服现有技术不足,本发明的目的是提供一种适用于片上RAM偏小的多核MCU的控制器内MAP数据在线标定方法。
为实现上述目的,本发明采取以下技术方案,一种控制器内MAP数据在线标定方法,它包括以下步骤:
1)将MCU内存分为若干个block,包括以下步骤:
①MCU是多核,MCU中部分核心(CPU1)专门用于实时事件的处理,其它的核心(CPU2)负责和标定工具的通信、标定过程实施和MAP的查表;
②片上FLASH具有2个以上block,block是擦除时Flash上高压的最小区域,扇区是Flash的最小擦除片段,实时事件处理的MCU代码必须独享存储在一个block中,MAP存储在该block之外的block中;
③将用于控制、计算的MAP数据存入一个block,作为标定block,使用CPU2调用和处理;
将实时事件的控制代码存入一个block,作为CPU1代码block。
2)在每个block中有若干个最小擦除片段及扇区,系统中每张MAP都定义为相同大小为扇区大小的整数倍或整数分之一,并按扇区对齐存储。扇区必须小于MCU能提供的标定RAM大小。
3)CPU2运行时读取CPU2代码block中代码,在进行在线MAP数据擦除和写入的时候,CPU2进入临界段,停止后台计算、MAP查找、通讯等操作,等待MAP更新操作完成。
4)CPU1运行时读取CPU1代码block中代码,在进行在线MAP数据标定时,CPU1保持正常工作状态,使控制器实时功能正常进行。
5)在标定过程中,把需要标定的MAP从标定扇区复制到标定RAM中,在标定RAM中进行相应修改,包括以下步骤:
①上位机的标定软件与控制器握手成功后,按照MAP所在首地址和占用存储空间大小将需修改MAP所在扇区的数据复制到标定RAM。
②MCU对标定MAP的查表根据标定RAM中的数据进行。
③基于②,上位机对MAP的修改首先在标定RAM中进行,并可以立即生效。
在需要时上位机标定软件向下位机发送固化指令,接收到指令微控制器的CPU2进入临界段,停止对标定block的读操作,将更新后的MAP从RAM拷贝写入Flash中,CPU1正常运行。
本发明具有以下特点:首先,MCU是多核,MCU中CPU1用于实时事件的处理,CPU2负责和标定工具的通信、标定过程实施和MAP的查表;MCU的FLASH具有2个以上block,其中实时事件处理的CPU1代码必须独享存储在一个block中,MAP存储在该block之外的block中;block中有若干个最小擦除片段即扇区,系统中每张MAP都定义为相同大小,为扇区大小的整数倍或整数分之一,并且按照扇区对齐存储,扇区和单张MAP必须小于MCU能提供的标定RAM大小;在对Flash进行操作的过程中,CPU1保持工作状态,能保证控制器正常运行;本发明能够在线标定所需要的MAP,并且不影响发动机正常工作,还解决了RAM空间不够的问题。
附图说明
图1双CPU对应block示意图,1为CPU1,2为CPU2,3为标定block,4为实时事件控制代码block;
图2在线标定MAP读取示意图,3为标定block,4为实时事件控制代码block,5为MAP所在扇区,6为标定RAM,7为RAM。
具体实施方式
以飞思卡尔MC9S12XEP100为例,其具有2个核心,2个核心不同,其中CPU1只能读取固定30K的Flash,而CPU2可以读取整个Flash;飞思卡尔MC9S12XEP100有5个block,其中blockB3、B2、B0大小为256K,存储空间分别为0xC08000到0xCFBFFF、0xD08000到0xDFBFFF和0xF08000到0xFFBFFF;blockB1S、B1N大小为128K,存储空间分别为0xE08000到0xE7BFFF和0xE88000到0xEFBFFF:
1)如图1所示,MCU中CPU11专门用于实时事件的处理,CPU22负责和标定工具的通信、标定过程实施和MAP的查表。在本发明实例中,FLASH具5个block,其中实时事件处理代码独享存储在128K的blockB1S中,使用其中30K的存储空间,MAP存储在256K的blockB3中。
2)如图2所示,包括以下步骤:
①根据MAP的数据总量的大小设置一块内存区域,作为标定block3,用于保存所有MAP数据。在本发明实例中,将MCU内存中地址为0xC08000到0xCFBFFF的存储空间,共256K空间的B3作为标定block,每张MAP占用存储大小为1K,共可存储256张MAP。
②设置一块内存区域,作为实时事件控制代码block4,用于保存CPU1实时处理所需代码。在本发明实例中,将MCU内存中地址为0xE08800到0xE7BFFF的存储空间,共128K空间的B1S作为CPU1代码block,CPU1只能读取其中地址为0xE08800到0xE0BFFF和0xE18000到0xE1BFFF共30K的空间,剩余空间仍不能存储MAP。
③根据一张MAP大小在整个RAM7中设置一块区域,作为标定RAM6,在本发明实例中,将MCU的RAM中地址为0xFD1000到0xFD13FF的RAM区域,共1K的空间作为标定RAM。
3)在编写控制代码的过程中,将所有MAP的原始数据保存在标定block3区域中。
4)在编写代码完成后,通过编译软件生成参数和MAP的链接表,并使用上位机软件解析该链接表,从而获取每个MAP在标定FLASH中存放的起始地址,并将之保存在上位机中。在本发明实例中,共有5张MAP,首地址分别为0xC08000、0xC08400、0xC08800、0xC08C00、0xC09000,大小均为1K。
5)如图2所示,在标定过程中,把需要标定的MAP从MCU内FLASH的MAP所在扇区5拷贝到标定RAM6内,在标定RAM6中对相应的数据进行修改,包括以下步骤:
①上位机标定工具软件与单片机系统建立连接后,选择要修改的MAP,此时,标定工具软件将需修改MAP的首地址和MCU;
②MCU根据接收到的首地址MAP从MAP所在扇区5中读取到标定RAM6,并发送给标定软件,在标定软件的界面显示出需标定的MAP内数据值。
③在标定工具软件中对MAP中的一个数据进行修改,标定软件计算该数据点相对于所在MAP起始地址的偏移地址,然后标定工具软件把该地址和修改后的数据发送给MCU,MCU在标定RAM6中对数据进行修改。
④当上位机向下位机发送更新Flash指令时,CPU22进入临界段,停止对标定block3的读操作,擦除MAP所在扇区5数据,将更新后的MAP从标定RAM6拷贝到MAP所在扇区5中,在更新完成后,CPU22退出临界段,恢复对标定block3的读操作。
本发明实例中,要对unsignedint型MAP1的第3个值进行修改,上位机发命令使MCU将MAP从标定block中0xC08000到0xC083FF复制到标定RAM0xFD1000到0xFD13FF中,在RAM中对0xFD1004和0xFD1005操作后,将这两个地址的值存到相应的地址0xC08004和0xC08005,完成标定。
上述实施例仅用于说明本发明,其中各个步骤的具体实施方式等都是可以有所变化的,凡是在本发明技术方案的基础上进行的等同变换和改进,均不应排除在本发明的保护范围之外。

Claims (1)

1.一种控制器内MAP数据在线标定方法,其特征在于:其包含如下步骤:
1)将MCU内存分为若干个block,其包括如下步骤:
①MCU中部分核心,称为CPU1,用于实时事件的处理,其他核心,称为CPU2,负责和标定工具的通信、标定过程实施和MAP查表;
②实时事件处理的CPU1代码独享存储在一个block中,MAP存储在该block之外的block中;
③用于控制、计算的MAP数据存入一个block,作为标定block,由CPU2调用和处理;
④将实时事件的控制代码存入一个block,作为CPU1控制代码的block;
2)在每个block中划分若干个最小擦除片段及扇区,扇区小于MCU能提供的标定RAM大小,系统中每张MAP相同大小、为扇区的整数倍或整数分之一,并按扇区对齐存储;
3)CPU2运行时读取标定block中代码,在进行在线MAP数据擦除和写入时,CPU2进入临界段,停止后台计算、MAP查找、通讯操作,等待MAP更新操作完成;
4)CPU1运行时读取CPU1控制代码的block中的代码,在进行在线MAP数据标定时,CPU1保持正常工作状态,控制器实时功能正常进行;
5)在标定过程中,将需要标定的MAP从标定扇区复制到标定RAM中进行修改,具体包括如下步骤:
①上位机的标定软件与控制器握手成功后,按照MAP所在首地址和占用存储空间大小将需修改MAP所在扇区的数据复制到标定RAM;
②MCU对标定MAP的查表根据标定RAM中的数据进行;
③基于②,上位机对MAP的修改首先在标定RAM中进行,并立即生效;
在需要时上位机标定软件向下位机发送固化指令,接收到指令微控制器的CPU2进入临界段,停止对标定block的读操作,将更新后的MAP从RAM拷贝写入Flash中,CPU1正常运行。
CN201310129770.1A 2013-04-16 2013-04-16 一种控制器内map数据在线标定方法 Active CN103176421B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310129770.1A CN103176421B (zh) 2013-04-16 2013-04-16 一种控制器内map数据在线标定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310129770.1A CN103176421B (zh) 2013-04-16 2013-04-16 一种控制器内map数据在线标定方法

Publications (2)

Publication Number Publication Date
CN103176421A CN103176421A (zh) 2013-06-26
CN103176421B true CN103176421B (zh) 2016-01-20

Family

ID=48636376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310129770.1A Active CN103176421B (zh) 2013-04-16 2013-04-16 一种控制器内map数据在线标定方法

Country Status (1)

Country Link
CN (1) CN103176421B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1514077A (zh) * 2002-12-19 2004-07-21 ��ʽ����С�������� 车载程序的改写控制装置
CN1743654A (zh) * 2004-08-31 2006-03-08 三菱电机株式会社 车载电子控制装置
CN101477471A (zh) * 2009-01-07 2009-07-08 杭州海康威视数字技术股份有限公司 一种嵌入式系统固件在线升级方法
CN201532572U (zh) * 2009-09-17 2010-07-21 许映林 双核多接口的智能汽车控制系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1514077A (zh) * 2002-12-19 2004-07-21 ��ʽ����С�������� 车载程序的改写控制装置
CN1743654A (zh) * 2004-08-31 2006-03-08 三菱电机株式会社 车载电子控制装置
CN101477471A (zh) * 2009-01-07 2009-07-08 杭州海康威视数字技术股份有限公司 一种嵌入式系统固件在线升级方法
CN201532572U (zh) * 2009-09-17 2010-07-21 许映林 双核多接口的智能汽车控制系统

Also Published As

Publication number Publication date
CN103176421A (zh) 2013-06-26

Similar Documents

Publication Publication Date Title
CN103207797B (zh) 基于通用可扩展固件接口固件系统的胶囊式定制更新方法
JP5571208B2 (ja) パフォーマンスカウンタの仮想化
CN100504789C (zh) 控制虚拟机的方法
JP5291912B2 (ja) プロセス制御システムにおいて使用する機能ブロックの動作を修正変更するための方法及び動的モディファイア機能ブロック
US6920521B2 (en) Method and system of managing virtualized physical memory in a data processing system
US10055361B2 (en) Memory controller for providing a plurality of defined areas of a mass storage medium as independent mass memories to a master operating system core for exclusive provision to virtual machines
CN108932154B (zh) 一种分布式虚拟机管理器
CN102243595B (zh) 基于MMU架构的Java Card系统组件更新方法
CN105335306B (zh) 一种内存控制方法和装置
CN105144096A (zh) 最小化在可热插拔程序存储器中的操作系统内核更新期间的切换时间
CN104573422A (zh) 一种基于虚拟机的应用进程运行方法及装置
CN109947500A (zh) 一种程序加载方法、装置、系统、芯片和存储介质
CN110569066A (zh) 多核系统共用代码段的控制方法、智能终端及存储介质
CN103176421B (zh) 一种控制器内map数据在线标定方法
CN106407130A8 (zh) 一种Nandflash内存数据管理的方法
CN108959149A (zh) 一种基于共享内存的多核处理器交互总线设计方法
US20120151153A1 (en) Programmable Controller
CN105653478A (zh) 串行闪存控制器、串行闪存控制方法及串行闪存控制系统
CN107861807A (zh) 程序调用的优化方法及装置
JP7369701B2 (ja) 処理回路上で実行されるべきプログラムをデバッグするときにメタデータにアクセスする方法
CN101571831A (zh) 存储器子系统及管理方法、包含该子系统的计算机系统
US20180101384A1 (en) Morphed instruction according to configuration update
CN101763292A (zh) 基于地址窗口的处理器推测访问过滤装置及其过滤方法
US20120017035A1 (en) Runtime reprogramming of a processor code space memory area
CN110598412B (zh) 将权力信息隔离并依托它进行权力检查的方法及计算装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201112

Address after: Fuxing Road, Yicheng Economic Development Zone, Zaozhuang City, Shandong Province

Patentee after: Zaozhuang Zhibo Intelligent Technology Co.,Ltd.

Address before: 212009 Zhenjiang city of Jiangsu province science and Technology Industrial Park Dingmao Metro 2.5 Building No. 4

Patentee before: HENTS TECHNOLOGIES Inc.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231227

Address after: 277300 Ruibo fuel yard, Yinping Town, Yicheng District, Zaozhuang City, Shandong Province

Patentee after: Huayue Drilling (Shandong) Craft Jewelry Co.,Ltd.

Address before: 277300 Fuxing Road, Yicheng Economic Development Zone, Zaozhuang City, Shandong Province

Patentee before: Zaozhuang Zhibo Intelligent Technology Co.,Ltd.

TR01 Transfer of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method for online calibration of MAP data within a controller

Granted publication date: 20160120

Pledgee: Zaozhuang rural commercial bank Limited by Share Ltd. Yicheng sub branch

Pledgor: Huayue Drilling (Shandong) Craft Jewelry Co.,Ltd.

Registration number: Y2024980007052

PE01 Entry into force of the registration of the contract for pledge of patent right