当前位置:首页 > 模拟 > 模拟
[导读]飞控计算机CPU模块的处理器通常选用PowerPC或X86系列,CPU模块设计有专门的FLASH芯片,为保证飞控程序存放的正确无误,FLASH测试必不可少。而智能接口模块的处理器通常选用TMSF240、TMSF2812等,采用片内FLASH存放自

飞控计算机CPU模块的处理器通常选用PowerPC或X86系列,CPU模块设计有专门的FLASH芯片,为保证飞控程序存放的正确无误,FLASH测试必不可少。而智能接口模块的处理器通常选用TMSF240、TMSF2812等,采用片内FLASH存放自己的程序。这部分FLASH的自测试常常被忽视,而这是飞控系统不能容忍的。本文介绍了一种基于TMSF240芯片内部FLASH的自测试方法

1 问题描述

在CPU处理器无自带FLASH空间的情况下,我们选用市场上专用的FLASH芯片,通过硬件设计该FLASH芯片的每一个地址空间都是可以访问的,我们可以指定不同的区域存放不同的内容。FLASH芯片的自测试也有很多种方法,目前较普遍采用的是校验和的方法,即由专门的烧写工具(可以使用软件完成该工具)在烧写的过程中将校验和计算好直接放到指定的单元中,这个单元可以指定到烧程序时写不到的空闲空间,自测试时只需重新计算一遍校验和与该值进行比较即可。此种方法我们称之为方法一。

TMSF240内部自带FLASH存储空间,烧录过程对于用户来说较透明。我们不直接指定向某一具体的Flash空间写入数据,而是通过执行TI公司提供的批处理文件,经由闻亭仿真器连接目标机来完成烧录程序的过程,因此直接使用方法一我们无处存放校验和为使用方法一来测试芯片内部的FLASH我们必须解决校验和的存放问题。

2 芯片内部FLASH自测试方法概述

下面介绍的方法实现的是解决程序本身自测试程序本身烧到FLASH后保存的是否正确的问题。该方法不是将校验和直接写到FLASH中,而是在待烧录的程序中定义一个变量,该变量最终用于存放事先计算好的校验和,通过两次烧录实现芯片内部FLASH自测试功能的。必须巧妙地避开因改变程序本身而引起的程序校验和改变而导致自测试算法失效的问题。

本方法需要事先将程序完全调试好烧录到FLASH中,然后才能读取FLASH内容计算校验和。此时将校验和值赋给事先定义好的变量,重新编译后得到最终的目标码,烧录到FLASH中。程序上电后自动运行,FLASH自测试程序在每次执行自测试功能时都将要测试的程序空间读出并计算校验和与该变量进行比较,比较结果一致则待测试FLASH空间正确,反之则表明FLASH空间有故障。

由于变量赋值的改变会导致整个代码校验和的改变,因此该问题必须得到恰当的解决。第一次烧写的程序的算法如图1所示。

以上步骤中第二步到第四步是此算法的实现重点,它属于代码的一部分,两次烧写要对其进行更改,详见第3节。第三步是本方法的关键所在,由于sum=0,所以经过“sum=sum+sum;”的运算后sum值还是0,并没有改变sum的值。而sum的初值0并没有对程序的真实校验和值做出贡献,这为第二次烧写的程序代码和计算做出铺垫。

3 芯片内部FLASH自测试方法详述

3.1 第一次烧写步骤

第一次烧写过程如下:

步骤1:将包含图1的代码编译后形成待烧录文件*.out;

步骤2:将代码编译生成待烧录文件*.out,然后通过TI公司提供的批处理文件和仿真器将其烧入片内自带的FLASH中。

3.2 第二次烧写步骤

第二次烧写过程如下:

步骤1:利用闻亭仿真器设置成烧录模式下代码调试模式,将硬件断点设置在FLASH自测试的函数入口处;

步骤2:将程序连续运行至断点处后,单步调试计算出真正的代码和sum=XXX;

步骤3:此时更改程序,将计算好的校验和写入程序中定义好的变量中,即将图1中第二步中sum=0更改为sum=XXX;

步骤4:将代码重新编译生成待烧录文件*.out,然后通过TI公司提供的批处理文件和仿真器将其烧入片内自带的FLASH中。

3.3 方法详细说明

在第二次烧写过程中,图1所示的算法变成图2所示内容。

由于原来的校验和为0,现在将其改为XXX,所以第二次固化的程序的校验和比第一次固化的程序的校验和增加了XXX。而第一次固化的校验和本应该为XXX,因此第二次固化程序的最终的校验和计算出来后应check sum为2XXX,图2中的第三步sum=sum+sum正好满足了上述要求,即sum=2XXX。因此第四步check sum=sum能正确反映自测试结果。

需要补充说明一点,该算法是基于第一次烧录成功后重新加载第一次烧录的程序由DSP处理器自动计算校验和是正确的基础上的,这是由CPU的加减乘除和逻辑运算等自测试正确保证的,在上电时PUBIT里有该项自测试。

4 结束语

DSP已经广泛应用于飞控计算机智能接口模块中。虽然其具有很高的可靠性,但在飞控系统的使用中也必须进行测试。本文就DSP芯片内部自带FLASH提出了一种自测试方法,通过两次烧写FLASH将待测空间的校验和计算出来并计入RAM中事先定义好的变量中,重新编译后生成新的目标码校验和变成第一次校验和的2倍。这样利用sum=sum+sum巧妙地避过了两次校验和增加而引起程序的改动。此方法简单有效地解决了DSP芯片内部FLASH自测试问题,并已在机载设备,包括飞控计算机接口模块中得到应用,对提高机载设备的可测试性和可靠性有一定的作用,值得推广使用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭