CN101551740B - 嵌入控制装置 - Google Patents

嵌入控制装置 Download PDF

Info

Publication number
CN101551740B
CN101551740B CN2009100049341A CN200910004934A CN101551740B CN 101551740 B CN101551740 B CN 101551740B CN 2009100049341 A CN2009100049341 A CN 2009100049341A CN 200910004934 A CN200910004934 A CN 200910004934A CN 101551740 B CN101551740 B CN 101551740B
Authority
CN
China
Prior art keywords
data
mantissa
floating number
number form
mentioned
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.)
Expired - Fee Related
Application number
CN2009100049341A
Other languages
English (en)
Other versions
CN101551740A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN101551740A publication Critical patent/CN101551740A/zh
Application granted granted Critical
Publication of CN101551740B publication Critical patent/CN101551740B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/03Digital function generators working, at least partly, by table look-up
    • G06F1/035Reduction of table size

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)

Abstract

本发明提供一种嵌入控制装置,能够确保基于浮点数形式的数据的运算精度,并且能够避免存储装置的存储区域的不足。根据基于本发明的嵌入控制装置,在将浮点数形式的离散数据保存在读取专用存储装置中时,将浮点数形式的离散数据转换为尾数部缩短型浮点数形式的数据后保存。这里,所谓尾数部缩短型浮点数是从浮点数的尾数部中删除了低位比特后的数据。进一步地,在根据离散数据进行插值运算时,将保存在读取专用存储装置中的尾数部缩短型浮点数形式的离散数据恢复为浮点数形式的离散数据后进行插值运算。

Description

嵌入控制装置
技术领域
本发明涉及生成针对控制对象机器的控制信号的控制装置,特别,涉及具有进行浮点数运算的处理器的嵌入控制装置。 
背景技术
近年,正限制汽车中的排气·燃费,并提高所要求的操作性·安全性级别。因此,即使是汽车的嵌入控制装置中,也需要控制精度的提高,并开始采用具有进行浮点数运算的处理器(FPU)或微型计算机的控制单元。 
在汽车的嵌入控制装置中,根据地图/制表/轴数据来进行制表/地图的插值运算。地图/制表/轴数据意思是地图/轴数据或制表/轴数据。所谓地图/轴数据是将被称为轴的参数作为X轴、将被控制量分别作为Y轴和Z轴的三维地图。所谓制表/轴数据是将被称为轴的参数作为X轴、将被控制量作为Y轴的二维制表。 
这些数据是离散值,也被称为参照值。因此,从这样的离散值数据得到更高精度的数据的处理是插值运算。采用由插值运算得到的数据对控制对象进行控制。 
地图/制表/轴数据用定点数表示。但是,在使用浮点数运算用处理器(FPU)或微型计算机的情况下,必须由浮点数来表示地图/制表/轴数据。 
定点数的数据大小是1字节、2字节、或4字节。另一方面,浮点数的数据大小,在单精度浮点数(single-precision floating-point number)的情况下是4字节,在双精度浮点数(double-precision floating-point number)的情况下是8字节。因此,在浮点数运算中使用的数据量如果与现有的定点数运算中使用的数据量相比较,则大体为加倍程度,处理器(FPU)或微型计算机的存储区域开始不足起来。 
在专利文献1中公开的技术中,将地图/制表/轴数据保存在存储装置中的情况下,由数据容量较小的定点数来定义地图/制表/轴数据。在根据 地图/制表/轴数据来进行制表/地图的插值运算的情况下,将定点数形式的数据转换为浮点数形式的数据。这样,能够避免存储装置的存储容量的不足,同时,能够确保运算精度。 
专利文献1:JP特开2004-225668号公报 
发明内容
现有技术中,在转换地图/制表/轴数据时,使用物理值换算数据(LSB数据和偏移数据(offset data))。即,在进行插值运算时,将定点数的地图/制表/轴数据转换为浮点数形式的数据,乘以作为物理值换算数据的LSB数据,更进一步地加上偏移数据。此外,在将地图/制表/轴数据保存至备份存储器时,从可读写的存储装置中临时取出浮点数的地图/制表/轴数据。接着,用定点数的最大值和最小值来限制它们。下面,减去偏移数据,用LSB数据去除。将这样得到的地图/制表/轴数据保存至备份存储器中。因此,存在增加运算负荷的可能性。 
本发明鉴于这样的课题而产生,其目的在于,提供一种嵌入控制装置,能够确保基于浮点数形式的数据的运算精度,并且,能够避免存储装置的存储区域的不足。 
根据基于本发明的嵌入控制装置,将浮点数形式的离散数据保存在读取专用存储装置中时,将浮点数形式的离散数据转换为尾数部缩短型浮点数形式的离散数据后保存。这里,所谓尾数部缩短型浮点数是在浮点数的尾数部中删除低位比特后的数据。 
更进一步地,在根据离散数据进行插值运算时,将保存在读取专用存储装置中的尾数部缩短型浮点数形式的离散数据恢复为浮点数形式的离散数据后,进行插值运算。 
根据本发明,提供一种嵌入控制装置,能够确保基于浮点数形式的数据的运算精度,并且,能够避免存储装置的存储区域的不足。 
附图说明
图1是表示基于本发明的嵌入控制装置的第1例的构成的框图。 
图2是表示现有浮点数形式的数据和基于本发明的尾数部缩短型浮点 数形式的数据的图。 
图3是说明在基于本发明的嵌入控制装置中根据浮点数形式的数据生成尾数部缩短型浮点数形式的数据并将其保存至存储装置的处理的流程图。 
图4是说明在基于本发明的嵌入控制装置中根据浮点数形式的数据生成尾数部缩短型浮点数形式的数据并用其进行制表/地图的插值运算的处理的流程图。 
图5是表示在基于本发明的嵌入控制装置中通过将规定值代入尾数部缩短型浮点数形式的数据的尾数部低位比特中而得到的浮点数形式的数据的图。 
图6是说明在现有技术中从定点数形式的数据生成浮点数形式的数据并由此进行制表/地图的插值运算的处理的流程图。 
图7是表示在基于本发明的嵌入控制装置中通过在尾数部缩短型浮点数形式的数据的尾数部低位比特中代入0而得到的浮点数形式的数据的图。 
图8是说明在基于本发明的嵌入控制装置中通过在尾数部缩短型浮点数形式的数据的尾数部低位比特中代入0而生成浮点数形式的数据并用其进行制表/地图的插值运算的处理的流程图。 
图9是表示在基于本发明的嵌入控制装置中通过在尾数部缩短型浮点数形式的数据的尾数部低位比特中代入规定值可取值的最大值的大约一半的值而得到的尾数部缩短型浮点数形式的数据的例子的图。 
图10是说明在基于本发明的嵌入控制装置中通过在尾数部缩短型浮点数形式的数据的尾数部低位比特中代入规定值可取值的最大值的大约一半的值而生成尾数部缩短型浮点数形式的数据,并用其进行制表/地图的插值运算的处理的流程图。 
图11是说明在基于本发明的嵌入控制装置中通过在尾数部缩短型浮点数形式的数据的尾数部低位比特中代入规定值可取值的最大值的大约一半的值而生成尾数部缩短型浮点数形式的数据,并用其进行制表/地图的插值运算的流程图。 
图12是表示基于本发明的尾数部缩短型浮点数形式的数据的其他例 子的图。 
图13是说明在基于本发明的嵌入控制装置中生成图12的尾数部缩短型浮点数形式的数据的处理的流程图。 
图14是表示基于本发明的嵌入控制装置的第2例的构成的框图。 
图15是说明在基于本发明的嵌入控制装置的第2例中由保存在备份存储器中的尾数部缩短型浮点数形式的数据而生成单精度浮点数形式的数据并用其进行制表/地图的插值运算的处理的流程图。 
图16是说明在现有技术中由保存在备份存储器中的定点数形式的数据而生成单精度浮点数形式的数据,并用其进行制表/地图的插值运算的处理的流程图。 
图17是表示基于本发明的尾数部缩短型浮点数形式的数据的另一其他例子的图。 
图18是说明在基于本发明的嵌入控制装置中采用顺序存取方法读出字节数不同的多个尾数部缩短型浮点数形式的数据的方法的图。 
图19是说明在基于本发明的嵌入控制装置中采用顺序存取方法读出字节数不同的多个尾数部缩短型浮点数形式的数据的方法的流程图。 
符号说明 
1控制单元(C/U) 
2中央运算处理装置(CPU) 
3读取专用存储装置(ROM) 
4控制对象机器 
5传感器 
6执行元件(actuator) 
7输入输出装置(I/O) 
24备份存储器 
26可读写存储装置(RAM) 
具体实施方式
以下,说明发明的实施方式。采用附图说明本发明的实施例。参照图 1,说明发明的嵌入控制装置的第1例。本例的嵌入控制装置具有包括微型计算机的控制单元(C/U)1。控制单元(C/U)1具有:中央运算处理装置(CPU)2、读取专用存储装置(ROM)3、存储器(RAM)、以及输入输出装置(I/O)7。在读取专用存储装置3中保存有地图/制表/轴数据8。 
控制对象机器4具有传感器5和执行元件6。来自设置在控制对象机器4上的传感器5的信号被送至控制单元1。来自传感器5的信号经由控制单元1的输入输出装置7,被送至中央运算处理装置2。中央运算处理装置2采用来自传感器5的信号和保存在读取专用存储装置3中的地图/制表/轴数据8,进行插值运算,并生成控制信号。控制信号经由输入输出装置7被送至控制对象机器4的执行元件6。 
控制单元1可以是车用发动机控制单元,控制对象机器4可以是汽油喷射式内燃机,传感器5可以是吸入空气量传感器以及发动机旋转数传感器,执行元件6可以是燃料喷射阀。该情况下,地图/制表/轴数据8可以是将X轴作为吸入空气量轴、将Y轴作为发动机旋转数轴、将Z轴作为燃料喷射量的三维地图。 
根据吸入空气量传感器向中央运算处理装置2供给吸入空气量的测量值,根据发动机旋转数向中央运算处理装置2供给发动机旋转数的测量值。中央运算处理装置2,在燃料喷射量地图上,由插值运算算出燃料喷射量。即,根据燃料喷射量地图上的离散值,对与吸入空气量和发动机旋转数的测量值所对应的燃料喷射量进行运算。中央运算处理装置2中的插值运算中使用浮点数形式的数据。 
中央运算处理装置2根据由插值运算得到的燃料喷射量,生成控制燃料喷射阀的开阀时间的信号。该信号被供给汽油喷射式内燃机,进行燃料喷射控制。 
根据本发明,控制对象机器4虽然可以是汽油喷射式内燃机,但是也可以是其他机器,例如空调。在控制对象机器4是空调的情况下,控制单元1是空调的控制器。无论如何,本发明如果是在硬件中预先内置了软件的嵌入控制装置,则也能够应用于任何的控制装置。 
参照图2,说明基于现有技术的浮点数形式的数据和基于本发明的尾数部缩短型浮点数形式的数据的例子。首先,说明基于现有技术的浮点数 形式的数据9。浮点数形式的数据9表示基于IEEE754标准的浮点数形式的数据。该浮点数形式的数据9是由符号部(1比特)+指数部(8比特)+尾数部(23比特)构成的共计4字节的数据。 
下面,说明本发明中定义的尾数部缩短型浮点数形式的数据10的例子。本例的尾数部缩短型浮点数形式的数据10是由符号部(1比特)+指数部(8比特)+尾数部(7比特)构成的共计2字节的数据。 
如果将本例的尾数部缩短型浮点数形式的数据10与基于IEEE754标准的浮点数形式的数据9进行比较,则本例的尾数部缩短型浮点数形式的数据10中,尾数部的低位比特被删除。这里,表示将尾数部的低位16比特删除后的情况。 
由本发明定义的2字节的尾数部缩短型浮点数形式的数据10通过从4字节的单精度浮点数形式的数据9中删除尾数部的低位16比特而得到。 
这里,虽然对采用4字节的单精度浮点数形式的数据9来生成2字节的尾数部缩短型浮点数形式的数据10的例子进行了说明,但是本发明不限定于此。例如,可以代替4字节的单精度浮点数形式的数据9,而采用8字节的双精度浮点数形式的数据。也可以代替2字节的尾数部缩短型浮点数形式的数据10而生成2字节以外的尾数部缩短型浮点数形式的数据10。以下,如图2所示,说明采用4字节的单精度浮点数形式的数据9而生成尾数部缩短型浮点数形式的数据的情况。 
参照图3,说明如下处理,即,将单精度浮点数形式的数据9变更为尾数部缩短型浮点数形式的数据10,并将其保存至存储装置。该处理是中央运算处理装置(CPU)2进行的。在步骤A1中,删除单精度浮点数形式的数据9的尾数部低位16比特。由此,生成尾数部缩短型浮点数形式的数据10。在步骤A2中,将由尾数部缩短型浮点数形式的数据10定义的地图/制表/轴数据8保存在存储装置3中。 
在本例中,由于采用2字节的尾数部缩短型浮点数形式的数据10,与采用4字节的单精度浮点数形式的数据9的情况相比较,50%的数据量被减少。例如,假设存储装置3中保存的单精度浮点数的地图/制表/轴数据为500字节。通过采用本例的尾数部缩短型浮点数形式的数据10,可以减少250字节的存储容量。 
参照图4,说明如下处理,即,将尾数部缩短型浮点数形式的数据10恢复为单精度浮点数形式的数据9,进行制表/地图的插值运算。该处理是中央运算处理器(CPU)2进行的。在步骤B1中,在尾数部缩短型浮点数形式的数据10上附加尾数部低位16比特的规定值12。由此,尾数部缩短型浮点数形式的数据10恢复为单精度浮点数形式的数据9。规定值12是预先规定的任意的常数值。该规定值12可以是0。 
在步骤B2中,采用单精度浮点数形式的数据9的数据,进行制表/地图的插值运算。 
图5表示如下状态,即,通过在尾数部缩短型浮点数形式的数据10上附加尾数部低位16比特的规定值12,而生成单精度浮点数形式的数据9。如图示,在生成尾数部缩短型浮点数形式的数据10时,删除了尾数部的低位比特。因此,在生成单精度浮点数形式的数据9的数据时,附加尾数部的低位16比特的规定值12。关于规定值12以后说明。这样,将2字节的尾数部缩短型浮点数形式的数据10转换为4字节的单精度浮点数形式的数据9。 
参照图6,说明通过现有技术采用定点数形式的数据进行制表/地图的插值运算的处理。在现有技术中,地图/制表/轴数据8由定点数形式的数据来定义并保存在存储装置中。因此,在进行制表/地图的插值运算中,需要将定点数形式的数据转换为单精度浮点数形式的数据9,需要由此定义物理值换算数据(LSB数据和偏移数据)。 
在步骤C1中,将定点数形式的数据转换为单精度浮点数形式的数据。在步骤C2中,在单精度浮点数形式的数据上乘以LSB(最低位比特:leastsignificant bit)数据。在步骤C3中,在单精度浮点数形式的数据上加上偏移数据。在步骤B2中,采用单精度浮点数形式的数据9来进行制表/地图的插值运算。 
在这样的现有方式中,到进行步骤B2的制表/地图的插值运算为止,需要步骤C1、步骤C2、步骤C3的3个步骤。另一方面,根据本发明,如图4所示,到进行步骤B2的制表/地图的插值运算为止,只需要步骤B1的1个步骤。因此,可以减少运算负荷。 
图7表示如下情况,即,通过在尾数部缩短型浮点数形式的数据10 上附加0作为规定值12,来得到单精度浮点数形式的数据13。 
参照图8,说明图7所示的得到单精度浮点数形式的数据13的处理。在步骤D1中,在尾数部缩短型浮点数形式的数据10上附加尾数部低位16比特量的0。由此,尾数部缩短型浮点数形式的数据10被转换为单精度浮点数形式的数据9。在步骤B2中,采用单精度浮点数形式的数据13来进行制表/地图的插值运算。 
另外,也可以取代附加规定值12的0,将尾数部缩短型浮点数形式的数据10的尾数部低位16比特视作0,由此进行制表/地图的插值运算。这样,通过将规定值12视作0,可以删除步骤D1。因此,可以更进一步地减少运算负荷。如果在规定值12上附加0,则存在由此复原的单精度浮点数形式的数据9中含有的误差变大的情况。因此,通过在规定值12上采用0以外的值,能够减少复原的单精度浮点数形式的数据9中含有的误差。 
参照图9,说明在尾数部缩短型浮点数形式的数据10的尾数部低位16比特上附加的规定值12的例子。在本例的尾数部缩短型浮点数形式的数据14、15中,将规定值12作为相当于规定值12可取值的最大值的一半的值。例如,如果将规定值12可取值的最大值作为65535,其一半可以是32767和32768的2个。在图9的上侧的尾数部缩短型浮点数形式的数据14中,规定值12是32767。如果用二进制来对其进行表示,则为在1之后排列15个0的数,如果用十六进制来表示,则为0x8000。在图9的下侧的尾数部缩短型浮点数形式的数据15中,规定值12是32768。如果用二进制来对其进行表示,则为在0之后排列15个1的数,如果用十六进制来表示,则为0x7FFF。 
首先参照图10说明。在步骤E1中,在尾数部缩短型浮点数形式的数据10上附加最高位比特为1、其他比特为0的尾数部低位16比特。由此,尾数部缩短型浮点数形式的数据10被转换为图9的单精度浮点数形式的数据14。在步骤B2中,采用单精度浮点数形式的数据14来进行制表/地图的插值运算。 
下面,参照图11来说明。在步骤F1中,在尾数部缩短型浮点数形式的数据10上附加最高位比特为0、其他比特为1的尾数部低位16比特。由此,尾数部缩短型浮点数形式的数据10被转换为图9的单精度浮点数 形式的数据15。在步骤B2中,采用单精度浮点数形式的数据15来进行制表/地图的插值运算。 
这样,如果将在尾数部缩短型浮点数形式的数据10的尾数部低位16比特上附加的规定值设置为规定值可取值的最大值的大体一半的值,则复原的单精度浮点数形式的数据9中含有的误差变小。因此,可以将在存储装置3中保存尾数部缩短型浮点数形式的数据10时产生的舍入误差标准化。 
参照图12,说明生成尾数部缩短型浮点数形式的数据的方法的其他例子。在本例中,在生成尾数部缩短型浮点数形式的数据时,虽然删除尾数部的低位16比特,但是此时,采用尾数部的低位比特(16比特)的最高位比特18(1比特)的值来使得尾数部高位比特17(7比特)的值产生变化。此时的流程图是图13。 
参照图13来说明。在步骤19中,将单精度浮点数形式的数据9的尾数部的低位比特(16比特)的最高位比特18(1比特)的比特值设置为X。下面,在步骤20中,判定X是否为1。X=1的情况下,进入步骤21。在步骤21中,在尾数部高位比特17上加1。 
这是认为,在X=1的情况下,删除的尾数部的低位16比特的值比较大。另一方面,在恢复为单精度浮点数形式的数据9时,附加0作为规定值12。此时,存在以下可能性,即,复原的单精度浮点数形式的数据9和原来的单精度浮点数形式的数据9之间的误差变大。因此,预先在尾数部高位比特17上加1来抑制误差。 
在步骤20中,在X≠1(X=0)的情况下,尾数部高位比特16不发生变化,该处理结束。X=0的情况下,认为删除的尾数部的低位16比特的值比较小。该情况下认为,在恢复为单精度浮点数形式的数据9时,即使附加0作为规定值12,复原的单精度浮点数形式的数据9和原来的单精度浮点数形式的数据9之间的误差也较小。因此,没有必要使得尾数部高位比特16发生变化。 
参照图14,说明发明的嵌入控制装置的第2例子。本例的嵌入控制装置具有包括微型计算机的控制单元(C/U)1。控制单元(C/U)1具有:中央运算处理装置(CPU)2、读取专用存储装置(ROM)3、可读写的存 储装置(RAM)26、备份存储器24、以及输入输出装置(I/O)7。在读取专用存储装置3中,保存有地图/制表/轴数据8。在可读写的存储装置(RAM)26中临时保存输入信号或运算的过程中算出的数据27。但是,数据27由电源OFF消去。因此,数据27和相同的保存数据25通常保存在备份存储器24中。在下一次电源投入时,利用备份存储器24中保存的保存数据25。 
另外,备份存储器24可以是由电源经常通电的RAM,也可以是可电重写的EPROM和闪速存储器。 
保存在可读写的存储装置(RAM)26中的数据27是4字节的单精度浮点数形式的数据9。因此,将其转换为2字节的尾数部缩短型浮点数形式的数据10并作为保存数据25。这样,在备份存储器24中保存2字节的尾数部缩短型浮点数形式的数据10。在读出备份存储器24中保存的保存数据25并对其进行运算的情况下,恢复为4字节的单精度浮点数形式的数据9。已经说明了恢复为4字节的单精度浮点数形式的数据9的方法。也就是说,将规定值12代入尾数部低位16比特。此时的流程图是图15。 
以下针对图15说明。在步骤G1中,删除保存在可读写的存储装置26中的单精度浮点数形式的算出数据27的尾数部低位比特。由此,得到尾数部缩短型浮点数形式的数据。在步骤G2中,将尾数部缩短型浮点数形式的保存数据28保存至备份存储器24。在步骤G3中,在保存在备份存储器24中的保存数据28的尾数部低位比特上附加规定值。由此,复原单精度浮点数形式的数据9。在步骤B2中,采用单精度浮点数形式的数据9来进行制表/地图的插值运算。 
单精度浮点数形式的保存数据25是100字节的情况下,备份存储器24中保存的尾数部缩短型浮点数形式的数据10成为50字节,可以减少50字节的存储容量。 
参照图16,对采用作为现有技术的定点数形式的数据的情况进行说明。在步骤H1中,从保存在可读写的存储装置26中的单精度浮点数形式的算出数据27中减去偏移数据。在步骤H2中,用LSB去除减去后的算出数据27。在步骤H3中,将减去和除去后的算出数据27转换为定点数形式的数据。在步骤G2中,将定点数形式的保存数据25保存至备份存储 器24。在步骤C1中,将备份存储器24中保存的保存数据28转换为单精度浮点数形式的数据。在步骤C2中,在单精度浮点数形式的数据上乘以LSB数据。在步骤C3中,在相乘以后的数据上加上偏移数据。在步骤B2中,采用单精度浮点数形式的数据9来进行制表/地图的插值运算。 
在图16所示的现有技术中,到保存至备份存储器24为止,需要步骤H1、步骤H2、步骤H3的3个步骤。另一方面,根据图15所示的本发明,只需要步骤G1的1个步骤。因此,可以减少运算负荷。此外,在图16所示的现有技术中,到采用保存至备份存储器24的保存数据来进行制表/地图的插值运算为止,需要步骤C1、步骤C2、步骤C3的3个步骤。另一方面,本发明中,只需要步骤G3的1个步骤。因此,可以减少运算负荷。 
参照图17来说明基于本发明的尾数部缩短型浮点数形式的数据的其他的例子。本例的尾数部缩短型浮点数形式的数据28是由识别比特(1比特)+符号部(1比特)+指数部(8比特)+尾数部高位比特(6比特)构成的共计2字节的数据。本例的尾数部缩短型浮点数形式的数据28通过在图2所示的4字节的单精度浮点数形式的数据9的最前处附加识别比特(1比特)并删除尾数部的低位16比特而得到。 
本例的尾数部缩短型浮点数形式的数据29是由识别比特(1比特)+符号部(1比特)+指数部(8比特)+尾数部高位比特(14比特)构成的共计3字节的数据。本例的尾数部缩短型浮点数形式的数据29通过在图2所示的4字节的单精度浮点数形式的数据9的最前处附加识别比特(1比特)并删除尾数部的低位8比特而得到。 
识别比特(1比特)表示尾数部缩短型浮点数形式的数据的种类,也就是说,表示字节数。例如,识别比特30的值为“0”时表示2字节的尾数部缩短型浮点数形式的数据28,识别比特30的值为“1”时表示3字节的尾数部缩短型浮点数形式的数据29。中央运算处理装置2通过读取最前的识别比特30的值能够察知是2字节的尾数部缩短型浮点数形式的数据还是3字节的尾数部缩短型浮点数形式的数据。 
地图/制表/轴数据8包含图17所示的2种类的尾数部缩短型浮点数形式的数据28、29。 
2字节的尾数部缩短型浮点数形式的数据28由于数据量比较少,因此 能够减少读取专用存储装置3的存储容量。但是,采用其的运算精度较低。另一方面,3字节的尾数部缩短型浮点数形式的数据29由于数据量比较大,因此不能减少读取专用存储装置3的存储容量。但是,采用其的运算精度较高。 
因此,在优先减少读取专用存储装置3的存储容量的情况下,采用2字节的尾数部缩短型浮点数形式的数据28,在优先运算精度的情况下,采用3字节的尾数部缩短型浮点数形式的数据29。 
参照图18,说明采用顺序存取(sequential access)方法来读出保存在读取专用存储装置3中的数据的方法。如图示,在读取专用存储装置3中,保存有包含2种类的尾数部缩短型浮点数形式的数据28、29的地图/制表/轴数据8。根据该数据排列31,随机排列有2字节的尾数部缩短型浮点数形式的数据28和3字节的尾数部缩短型浮点数形式的数据29。中央运算处理装置2从该数据排列31的最先开始每3字节每3字节地读出。在第1次的读出中,中央运算处理装置2读出3字节的数据。中央运算处理装置2读出3字节的数据的最先的识别比特,并判定读出的数据为3字节的尾数部缩短型浮点数形式的数据29。这成为第1次的使用数据33。该使用数据33由3字节的尾数部缩短型浮点数形式的数据29构成。在该3字节的使用数据上附加低位8比特的规定值。通过该4字节转换34得到4字节的数据。 
在第2次的读出中,中央运算处理装置2读出3字节的数据。中央运算处理装置2读出3字节的数据的最先的识别比特,并判定读出的数据为2字节的尾数部缩短型浮点数形式的数据28。因此,在读出的3字节的数据中判定为在2字节的尾数部缩短型浮点数形式的数据28以外包含有1字节的无用数据。因此,删除读出的3字节的数据的后部的1字节的数据。这成为第2次的使用数据33。该使用数据33由2字节的尾数部缩短型浮点数形式的数据28构成。在该2字节的使用数据上附加低位16比特的规定值。通过该4字节转换34得到4字节的数据。 
参照图19,详细说明采用顺序存取方法来读出保存在读取专用存储装置3中的数据的方法。在步骤35中,进行初始化处理。也就是说,在数据地址A中代入地图/制表/轴数据的最先地址。在步骤36中,从数据地址 A表示的地址中读出3字节量的数据,将其代入临时变量X中。这相当于图18的读出数据32。 
在步骤37中,从临时变量X中含有的数据中读出识别比特30。识别比特30为“0”的情况下进入步骤38。也就是说,读出的数据是2字节的尾数部缩短型浮点数形式的数据28。识别比特30为“1”的情况下进入步骤42。也就是说,读出的数据是3字节的尾数部缩短型浮点数形式的数据29。 
步骤38~40是读出的数据为2字节的尾数部缩短型浮点数形式的数据28的情况下的处理。在步骤38中,为了下一次读出处理而在数据地址A上加2。在步骤39中,在该子程序返回的数据Y中代入3字节的数据X的最先2字节。这相当于图18的第2次的使用数据33。在步骤40中,在数据Y上附加低位16比特的规定值。由此,数据Y成为4字节的数据。这相当于图18的第2次的4字节转换34。 
步骤42~44是读出的数据为3字节的尾数部缩短型浮点数形式的数据29的情况下的处理。在步骤42中,为了下一次读出处理而在数据地址A上加3。在步骤43中,在数据Y中代入3字节的数据X。这相当于图18的第1次的使用数据33。在步骤44中,在数据Y上附加低位8比特的规定值。由该处理,数据Y成为4字节的数据。这相当于图18的第1次的4字节转换34。 
在步骤41中,参照循环计数器(loop counter),判定当前的数据是否为目标数据。在为目标数据的情况下进入步骤45,将数据Y作为返回值来结束该子程序。在步骤41中,在判定为尚未到达目标数据的情况下,返回到步骤36,并重复以后的步骤。 
如图17所示,通过用2种类的尾数部缩短型浮点数形式的数据来表示地图/制表/轴数据8,可以分开使用2种类的尾数部缩短型浮点数形式的数据。在优先减少读取专用存储装置3的存储容量的情况下,只采用2字节的尾数部缩短型浮点数形式的数据28,或者,主要采用2字节的尾数部缩短型浮点数形式的数据28。在优先计算精度的情况下,只采用3字节的尾数部缩短型浮点数形式的数据29,或者,主要采用3字节的尾数部缩短型浮点数形式的数据29。 
这里,说明了采用2字节的尾数部缩短型浮点数形式的数据28和3字节的尾数部缩短型浮点数形式的数据29的2种类的数据的例子。但是,也可以采用3种类以上的尾数部缩短型浮点数形式的数据。在该情况下识别比特30最少为2比特。 
在图17的例子中,在尾数部缩短型浮点数形式的数据的最先比特上附加了识别比特30。但是,也可以在尾数部缩短型浮点数形式的数据的任何位置附加识别比特30。在图18的例子中,中央运算处理装置2从数据排列31的最先开始每3字节每3字节地读出。因此,识别比特30也可以包含在从最先开始3字节的当中。但是,如图17的例子,识别比特30优选附加在尾数部缩短型浮点数形式的数据的最前处。在该情况下,通过只读入最先的1字节,可以识别数据的种类。由此,能够高速化处理。 
虽然以上说明了本发明的例子,但是本发明不限定为上述的例子,本领域从业人员能容易地理解专利请求范围中记载的发明的范围内可以有各种变更。 

Claims (11)

1.一种嵌入控制装置,包括微型计算机,该微型计算机具有保存浮点数形式的数据的读取专用存储装置和进行浮点数形式的数据的运算的中央运算处理装置,
上述中央运算处理装置在将浮点数形式的离散数据保存在上述读取专用存储装置中时,将浮点数形式的离散数据转换为删除了浮点数形式的数据的尾数部中低位比特的尾数部缩短型浮点数形式的数据后保存,
上述中央运算处理装置在根据保存在上述读取专用存储装置中的上述尾数部缩短型浮点数形式的离散数据进行插值运算时,将上述尾数部缩短型浮点数形式的离散数据转换为浮点数形式的离散数据后进行插值运算。
2.根据权利要求1所述的嵌入控制装置,其特征在于,
上述中央运算处理装置在将上述尾数部缩短型浮点数形式的离散数据转换为浮点数形式的离散数据时,在上述删除了的尾数部的低位比特上附加规定值。
3.根据权利要求2所述的嵌入控制装置,其特征在于,
上述规定值为0。
4.根据权利要求2所述的嵌入控制装置,其特征在于,
上述规定值为该规定值可取值的最大值的一半的值。
5.根据权利要求1所述的嵌入控制装置,其特征在于,
上述中央运算处理装置在将上述浮点数形式的离散数据转换为上述尾数部缩短型浮点数形式的数据时,如果上述浮点数形式的数据的上述删除的低位比特中最高位比特为“1”,则在上述尾数部缩短型浮点数形式的数据的尾数部高位比特上加1。
6.根据权利要求1所述的嵌入控制装置,其特征在于,
上述浮点数形式的离散数据是包含1比特的符号部、8比特的指数部、23比特的尾数部的4字节的数据,上述尾数部缩短型浮点数形式的离散数据是包含1比特的符号部、8比特的指数部、7比特的尾数部的2字节的数据,且删除了上述浮点数形式的数据的尾数部的低位16比特。
7.根据权利要求1所述的嵌入控制装置,其特征在于,
上述尾数部缩短型浮点数形式的离散数据包括指示该尾数部缩短型浮点数的字节数的识别比特。
8.根据权利要求7所述的嵌入控制装置,其特征在于,
上述识别比特被配置在上述尾数部缩短型浮点数形式的离散数据的最前处。
9.根据权利要求1所述的嵌入控制装置,其特征在于,
上述浮点数形式的离散数据是包括1比特的符号部、8比特的指数部、23比特的尾数部的4字节的数据,上述尾数部缩短型浮点数形式的离散数据是包含1比特的识别比特、1比特的符号部、8比特的指数部、6比特的尾数部的2字节的数据,且删除了上述浮点数形式的数据的尾数部的低位16比特。
10.根据权利要求1所述的嵌入控制装置,其特征在于,
上述浮点数形式的离散数据是包括1比特的符号部、8比特的指数部、23比特的尾数部的4字节的数据,上述尾数部缩短型浮点数形式的离散数据是包括1比特的识别比特、1比特的符号部、8比特的指数部、14比特的尾数部的3字节的数据,且删除了上述浮点数形式的数据的尾数部的低位8比特。
11.根据权利要求1所述的嵌入控制装置,其特征在于,
还包括暂时保存浮点数形式的数据的可读写存储装置、和保存与上述可读写存储装置中暂时保存的数据相同的保存数据的备份存储器,
上述中央运算处理装置在将保存在上述可读写存储装置中的浮点数形式的数据保存在上述备份存储器中时,将上述浮点数形式的数据转换为上述尾数部缩短型浮点数形式的数据后保存。
CN2009100049341A 2008-03-31 2009-02-20 嵌入控制装置 Expired - Fee Related CN101551740B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008-091632 2008-03-31
JP2008091632 2008-03-31
JP2008091632A JP4629750B2 (ja) 2008-03-31 2008-03-31 組み込み制御装置

Publications (2)

Publication Number Publication Date
CN101551740A CN101551740A (zh) 2009-10-07
CN101551740B true CN101551740B (zh) 2011-12-28

Family

ID=41066105

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100049341A Expired - Fee Related CN101551740B (zh) 2008-03-31 2009-02-20 嵌入控制装置

Country Status (4)

Country Link
US (1) US8484266B2 (zh)
EP (1) EP2112591B1 (zh)
JP (1) JP4629750B2 (zh)
CN (1) CN101551740B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2488322B (en) 2011-02-22 2017-09-20 Advanced Risc Mach Ltd Number format pre-conversion instructions
US10289412B2 (en) * 2012-02-09 2019-05-14 Qualcomm Incorporated Floating point constant generation instruction
DE102015000259B4 (de) * 2015-01-16 2016-12-29 Cayago Gmbh Schwimm- und Tauchhilfe
GB2539265B (en) 2015-06-12 2020-07-29 Advanced Risc Mach Ltd Apparatus and method for controlling rounding when performing a floating point operation
CN107038016B (zh) * 2017-03-29 2019-11-15 广州酷狗计算机科技有限公司 一种基于gpu的浮点数转换方法及装置
US11017291B2 (en) * 2017-04-28 2021-05-25 Intel Corporation Training with adaptive runtime and precision profiling
US10963246B2 (en) 2018-11-09 2021-03-30 Intel Corporation Systems and methods for performing 16-bit floating-point matrix dot product instructions
CN112558918B (zh) * 2020-12-11 2022-05-27 北京百度网讯科技有限公司 用于神经网络的乘加运算方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1890629A (zh) * 2003-12-18 2007-01-03 英特尔公司 使用按比例调整的整数的浮点运算
CN101042638A (zh) * 2006-03-23 2007-09-26 富士通株式会社 浮点数求和的处理方法及计算机系统

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5776634A (en) * 1980-10-31 1982-05-13 Hitachi Ltd Digital signal processor
US6643765B1 (en) * 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
US5696710A (en) * 1995-12-29 1997-12-09 Thomson Consumer Electronics, Inc. Apparatus for symmetrically reducing N least significant bits of an M-bit digital signal
US6601079B1 (en) * 1997-12-29 2003-07-29 Intel Corporation Converting between different floating point exponent representations
US6105129A (en) * 1998-02-18 2000-08-15 Advanced Micro Devices, Inc. Converting register data from a first format type to a second format type if a second type instruction consumes data produced by a first type instruction
US6253312B1 (en) * 1998-08-07 2001-06-26 Ip First, L.L.C. Method and apparatus for double operand load
US6212539B1 (en) * 1998-10-10 2001-04-03 Institute For The Development Of Emerging Architectures, L.L.C. Methods and apparatus for handling and storing bi-endian words in a floating-point processor
JP2000182072A (ja) * 1998-12-11 2000-06-30 Hitachi Ltd データ記録媒体、データプロセッサ及び描画情報演算方法
JP2000293494A (ja) * 1999-04-09 2000-10-20 Fuji Xerox Co Ltd 並列計算装置および並列計算方法
US6487653B1 (en) * 1999-08-25 2002-11-26 Advanced Micro Devices, Inc. Method and apparatus for denormal load handling
US7092803B2 (en) * 2000-08-18 2006-08-15 Idsc Holdings, Llc Remote monitoring, configuring, programming and diagnostic system and method for vehicles and vehicle components
US7330864B2 (en) * 2001-03-01 2008-02-12 Microsoft Corporation System and method for using native floating point microprocessor instructions to manipulate 16-bit floating point data representations
US8214655B2 (en) * 2002-03-29 2012-07-03 Kabushiki Kaisha Toshiba Data structure of multimedia file format, encrypting method and device thereof, and decrypting method and device thereof
US7188133B2 (en) * 2002-06-20 2007-03-06 Matsushita Electric Industrial Co., Ltd. Floating point number storage method and floating point arithmetic device
US7236995B2 (en) * 2002-12-27 2007-06-26 Arm Limited Data processing apparatus and method for converting a number between fixed-point and floating-point representations
JP4228706B2 (ja) * 2003-01-27 2009-02-25 株式会社デンソー 電子制御装置及び該電子制御装置の記憶装置
US7305295B2 (en) * 2004-04-23 2007-12-04 General Motors Corporation Throttle limiting for an internal combustion engine
JP4837305B2 (ja) * 2005-05-10 2011-12-14 ルネサスエレクトロニクス株式会社 マイクロプロセッサ及びマイクロプロセッサの制御方法
US7406589B2 (en) * 2005-05-12 2008-07-29 International Business Machines Corporation Processor having efficient function estimate instructions
US7533575B2 (en) * 2006-02-03 2009-05-19 Jentek Sensors, Inc. Quasistatic magnetic and electric field stress/strain gages
US7797360B2 (en) * 2006-04-06 2010-09-14 Sap Ag Sortable floating point numbers
EP1916603A1 (en) * 2006-10-23 2008-04-30 Codenomicon Ltd. Method and arrangement for locating input domain boundaries
US8103946B2 (en) * 2007-05-18 2012-01-24 GM Global Technology Operations LLC Secure data strategy for vehicle control systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1890629A (zh) * 2003-12-18 2007-01-03 英特尔公司 使用按比例调整的整数的浮点运算
CN101042638A (zh) * 2006-03-23 2007-09-26 富士通株式会社 浮点数求和的处理方法及计算机系统

Also Published As

Publication number Publication date
EP2112591B1 (en) 2012-12-19
EP2112591A3 (en) 2011-02-16
CN101551740A (zh) 2009-10-07
EP2112591A2 (en) 2009-10-28
US20090249040A1 (en) 2009-10-01
JP2009245212A (ja) 2009-10-22
US8484266B2 (en) 2013-07-09
JP4629750B2 (ja) 2011-02-09

Similar Documents

Publication Publication Date Title
CN101551740B (zh) 嵌入控制装置
CN102859158B (zh) 用于计算控制用的输出参量的控制设备和方法
US11449745B2 (en) Operation apparatus and method for convolutional neural network
US10852139B2 (en) Positioning method, positioning device, and robot
US9753695B2 (en) Datapath circuit for digital signal processors
US10318290B2 (en) Merged floating point operation using a modebit
US20160078107A1 (en) Storage device and stream filtering method thereof
US9684632B2 (en) Parallel processing and internal processors
WO2022247116A1 (zh) 质心轨迹生成方法、装置、计算机可读存储介质及机器人
CN108733347B (zh) 一种数据处理方法及装置
CN112163299A (zh) 挖掘机油耗的预测方法、系统及电子设备
US20110144927A1 (en) Method for real time capability simulation of an air system model of an internal combustion engine
CN110905677B (zh) 喷油量控制方法及设备
CN103678846B (zh) 具有效能调校及优化数据分享功能的游戏系统
CN104182201A (zh) 尤其在模型计算单元中纯基于硬件计算函数模型的fma单元
CN116129136A (zh) 矿山勘查剖面线提取方法、装置、计算机设备及存储介质
JP2019101962A (ja) 制御装置
CN111736763B (zh) 一种存储数据读取控制方法和装置
US7558811B2 (en) Electronic control apparatus and memory apparatus for electronic control apparatus
JP4158566B2 (ja) 浮動小数点演算機能を有する電子制御装置
CN118519978A (zh) 一种数据的保存方法、装置及电子设备
CN104657175A (zh) 利用配置芯片实现启动引导和数据的读写系统及方法
JP2003196991A (ja) Rom書込装置
CN104778027A (zh) 用于计算被除数和除数的除法的结果值的方法和设备
JP4453762B2 (ja) 浮動小数点演算機能を有する電子制御装置

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111228