信息定点化处理装置及其处理方法

文档序号:6607380阅读:379来源:国知局
专利名称:信息定点化处理装置及其处理方法
技术领域
本发明涉及的是一种计算机应用技术领域的装置及处理方法,具体是一种具有自 动处理能力的信息定点化处理装置及其处理方法。
背景技术
出于低功耗、低成本以及设计简便的考虑,许多处理单元并不支持浮点操作。但这 同时限制了处理单元能够承担的运算,因为操作数必须是整数。通常的解决方案是,如果 源操作数是浮点数,需要进行定点化处理,使浮点数转化为定点数。所谓定点化操作,就是 先对数据进行向左移位并取整,将其放大,进行运算后再进行向右移位,缩小至正确的数量 级。下式描述的就是定点化处理公式定点操作数=取整(浮点操作数<<左移放大参数)(1)最终结果=定点数结果 >> 右移缩小参数(2)在进行定点化处理时,必须同时考虑到同时考虑到运算的精度要求和防止运算结 果的溢出,这样才能保证整个定点系统的准确性和高性能。经过对现有技术的检索,发现在李中欣所著的上海交通大学硕士学位论文《低码 率语音编译码器的定点优化设计和实现》中介绍了现有的定点化处理方法。现有的方法是 开发人员手动地选取定点化处理公式,将其应用在浮点系统的每个模块之上,从而将浮点 系统转化为定点系统。但是该现有技术存在两点不足之处。首先,开发人员必须手动地选取定点化处理 公式。如《低码率语音编译码器的定点优化设计和实现》一文中所提到的,定点化处理并不 是随意进行的,如果对浮点操作数放大不足会导致系统最终结果的误差过大;而过分放大 则会导致系统中模块的数据超过系统位宽而溢出。对于较大的系统而言,若想同时兼顾整 个系统的性能和防止单个模块的数据溢出,开发人员必须手动试验多次来确定定点化处理 公式。这样一来,定点化处理的过程会占用大量的时间而且比较低效。其次,对于整个系统 的所有模块,现有技术都采用相同的定点化处理方式,造成系统的灵活性不足。

发明内容
本发明针对现有技术存在的上述不足,提供一种信息定点化处理装置及其处理方 法,通过使用模块内的定点化处理核负责其所处模块的定点化处理;模块互连接口用于不 同模块间信息和数据的传递;输出控制器负责精度的检查以及决定是否输出结果或者是修 正处理公式后继续进行处理。最终实现自动定点化处理,提高了处理效率,保证了处理精度 和准确性;同时,不同模块可以采用不同定点化处理增加了系统灵活性。本发明是通过以下技术方案实现的本发明涉及一种信息定点化处理装置,包括输出控制器和若干组串联的定点化 处理核以及对应的互连接口,其中定点化处理核控制进行数据信息处理的功能模块,同时 与互连接口相连接并传输定点化处理的信息,互连接口与定点化处理核和不同功能模块相连接并传输模块间的数据和定点化处理信息,输出控制器与互连接口相连接并接收输出数 据和定点化处理的信息,用以检查精度和决定是否输出结果或者是修正处理公式后继续进 行处理。所述的定点化处理核包括溢出控制单元、输入控制单元、处理控制单元、输出控 制单元,其中溢出控制单元负责接收上一级定点化处理核输出的定点化处理信息、判断当 前模块是否有数据溢出、调整模块内的定点化处理公式、并向下一级定点化处理核传递定 点化处理的信息。输入控制单元负责接收当前模块的输入数据并根据溢出控制单元给出的 定点化处理公式对输入数据进行定点化处理,最终提供给功能模块。处理控制单元在功能 模块运行的过程中,根据溢出控制单元给出的定点化处理公式对功能模块内的中间变量或 者静态参数进行定点化处理。输出控制单元接收功能模块的输出,待溢出控制单元检查确 定不发生溢出后,传递给下一级定点化处理核。所述的互连接口包括数据接收单元、定点化信息接收单元、转换单元、数据输出 单元、定点化信息输出单元。其中数据接收单元负责接收上一级定点化处理核输出的输出 数据。定点化信息接收单元接收上一级定点化处理核输出的定点化信息。转换单元负责将 两个接收单元的数据转换为下一级定点化处理核需要的形式。数据输出单元向下一级定点 化处理核输出所需数据。定点化信息输出单元向下一级定点化处理核输出所需的定点化信 肩、ο所述的输出控制器包括误差检测单元、输出转换单元。其中误差检测单元负责 检测输出与理想输出的误差,如其满足误差要求则允许输出否则将修改定点化处理公式, 从第一级定点化处理核开始新一轮的定点化处理。输出转换单元根据互连接口传递来的定 点化信息将数据转换到正确的量级最终予以输出。本发明涉及一种信息定点化处理方法,包括以下步骤第一步、设定定点化处理核以及互连接口以传递信息,设置输出控制器。第二步、系统初始化预定义定点化处理核的位宽用来判断是否发生溢出;预定 义理想输出和误差要求用以约束输出;预定义初始定点化公式。第三步、定点化处理第一级定点化处理核在第一轮处理中使用预定义初始定点 化公式,在第二级定点化处理核及以后轮次的处理使用输出控制器输出的处理公式,而其 他模块则使用由互连接口提供的上级模块的定点化信息。第四步、定点化处理核对输入信息以缺省倍率进行放大处理,并判断放大后的信 息是否溢出,当存在信息溢出时则将缺省倍率减少1并重新放大;否则通过输入控制单元 将放大后的信息传递给该定点化处理核对应的功能模块。第五步、定点化处理核根据溢出控制单元输出的定点化处理公式对功能模块内的 中间变量或静态参数进行定点化处理,并进行溢出检查当定点化处理溢出则将控制单元输出的定点化处理公式中的左移放大参数减少1 并作为更新后的定点化处理公式后返回第四步重新处理;否则执行第六步。第六步、定点化处理核对功能模块的输出进行溢出检查当存在输出信息溢出时,则将控制单元输出的定点化处理公式中的左移放大参数 减少1并作为更新后的定点化处理公式后返回第四步重新处理;否则将本级定点化处理的 输出信息输出至互连接口。
5
第七步、互连接口通过定点化信息接收单元和数据接收单元分别接收上一级定点 化处理核输出的定点化信息,然后将定点化信息进行数据转换后通过输出单元传递给下一 级定点化处理核,直至达到最后一级定点化处理核,该级互连接口将定点化信息传输至输 出控制器。第八步、输出控制器的输出转换单元将定点化信息进行适配处理后,由误差检测 单元对适配后的定点化信息进行误差检测当误差要求超过容限时,将定点化处理公式中的左移放大参数增加1并作为更新 后的定点化处理公式后返回第三步开始新一轮的定点化处理;否则输出适配后的定点化信 肩、ο与现有技术相比,本发明的优点包括能够自动完成定点化处理,而不需要人工干 预,同时能保证处理精度和性能,大幅提高了效率;对于系统中的不同模块能采取不同的定 点处理方式,进一步提高了精度,同时增加了系统的灵活性。


图1是本发明所提出的自动定点化处理装置的系统框图。图2是本发明所提出的自动定点化处理装置的定点化处理核的内部框图。图3是本发明所提出的自动定点化处理装置的互连接口的内部框图。图4是本发明所提出的自动定点化处理装置的输出控制器的内部框图。图5是示例采用了自动定点化处理装置后的系统框图。
具体实施例方式下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行 实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施 例。如图1所示,本实施例包括输出控制器113和若干组串联的定点化处理核111以 及对应的互连接口 112,其中定点化处理核111与互连接口 112相连接并传输定点化处理 的信息和数据,互连接口 112与定点化处理核111相连接并传输模块间的数据和定点化处 理信息,输出控制器113与互连接口 112相连接并接收输出数据和定点化处理的信息。所述的定点化处理核111包括溢出控制单元1111、输入控制单元1112、处理控制 单元1113、输出控制单元1114,其中溢出控制单元1111负责接收上一级定点化处理核输 出的定点化处理信息、判断当前模块是否有数据溢出、调整模块内的定点化处理公式、并向 下一级定点化处理核传递定点化处理的信息。输入控制单元1112负责接收当前模块的输 入数据并根据溢出控制单元1111给出的定点化处理公式对输入数据进行定点化处理,最 终提供给功能模块。处理控制单元1113在功能模块运行的过程中,根据溢出控制单元1111 给出的定点化处理公式对功能模块内的中间变量或者静态参数进行定点化处理。输出控制 单元1114接收功能模块的输出,待溢出控制单元1111检查确定不发生溢出后,传递给下一 级定点化处理核。所述的互连接口 112包括数据接收单元1121、定点化信息接收单元1122、转换单 元1123、数据输出单元1124、定点化信息输出单元1125。其中数据接收单元1121负责接
6收上一级定点化处理核输出的输出数据。定点化信息接收单元1122接收上一级定点化处 理核输出的定点化信息。转换单元1123负责将两个接收单元的数据转换为下一级定点化 处理核需要的形式。数据输出单元1124向下一级定点化处理核输出所需数据。定点化信 息输出单元1125向下一级定点化处理核输出所需的定点化信息。所述的输出控制器113包括误差检测单元1131、输出转换单元1132。其中误差 检测单元1131负责检测输出与理想输出的误差,如其满足误差要求则允许输出否则修改 定点化处理公式,从第一级定点化处理核开始新一轮的定点化处理。输出转换单元1132根 据互连接口传递来的定点化信息将数据转换到正确的量级最终予以输出。本装置涉及上述定点化处理装置的处理方法,包括以下步骤第一步、为所有的原系统模块增加定点化处理核111以形成新的模块、在不同模 块间增加互连接口 112以传递信息、在输出处增加输出控制器113。第二步、系统初始化第一,系统位宽以判断是否发生溢出;第二,定义理想输出 和误差要求用以约束输出;第三,提供初始的定点化公式。第三步、定点化处理装置开始对单个模块进行定点化处理。系统的第一级定点化 处理核在第一轮处理中使用用户定义的初始的定点化公式或者系统的缺省公式,在第二轮 及以后的处理使用输出控制器113给出的处理公式,而其他模块则使用由互连接口 112提 供的上级模块的定点化信息。第四步、模块内的定点化处理核111利用定点化公式将输入数据进行放大,判断 有否有溢出,如果有溢出则将定点化处理公式中的左移放大参数减少一,重新放大。如果没 有溢出则通过输入控制单元1112将数据传递给功能模块进行处理,并执行第五步。第五步、模块内的定点化处理核111在功能模块进行处理的过程中根据溢出控制 单元1111给出的定点化处理公式对功能模块内的中间变量或者静态参数进行定点化处 理。如果有溢出则将定点化处理公式中的左移放大参数减少一以形成新的定点化处理公 式,并返回第四步重新处理。如果没有溢出,则执行第六步。第六步、模块内的定点化处理核对当前模块的输出进行溢出检查,如果有溢出则 将定点化处理公式中的左移放大参数减少一以形成新的定点化处理公式,并返回第四步重 新处理。如果没有溢出,则将本模块的定点化处理信息和数据传递给互连接口 112,执行第
七少O第七步、互连接口 112传递数据。互连接口 112通过定点化信息接收单元1121和 数据接收单元1124分别接收上一级定点化处理核输出的定点化信息。如果,还存在未进行 定点化处理的下级模块,互连接口通过转换单元1122将定点化信息转换为所需形式,通过 两个输出单元传递给下一级定点化处理核,并且执行第四步进行新模块的定点化处理;如 果不存在未进行定点化处理的下级模块,互连接口 112将所有信息和数据传递给输出控制 器,并且执行第八步。第八步、输出控制器113的输出转换单元1132将数据缩小到正确的数量级,然后 误差检测单元对于这些数据进行误差检测,判断是否满足用户定义的误差要求。如果不满 足要求,则将定点化处理公式中的左移放大参数增加一形成新的处理公式,传递给第一级 定点化处理核并且执行第三步,开始新一轮的定点化处理。如果满足要求,则输出最终数 据。
如图5所示,为本装置实际应用示意图,其中模块1是基音提取中的中心削波处 理,模块2是非线性放大函数。 定点化装置处理的步骤如下第一步、系统整合。两个原系统模块增加了定点化处理核形成了新的模块、在不同 模块间增加互连接口以传递信息、在输出处增加输出控制器。第二步、系统初始化。用户提供的信息为处理器的数据范围_231 231-1输入数据=60.053214误差要求RMSE^ 10%期望输出=163433第三步、定点化处理装置开始对包含中心削波的模块1开始定点化处理。由于用 户没有定义初始的定点化处理公式,第一轮处理中使用系统缺省的公式为定点数=浮点 数取整。在第二轮及以后的处理使用输出控制器提供的定点化处理公式。第四步、定点化处理核采用第三步中的公式对输入数据进行处理,则第一轮处理 中定点输入数据为60没有发生溢出。第五步、定点化处理核对于模块内的阈值-60和60,以及常数-100和80进行定点
化处理。没有溢出。第六步、第一轮处理中第一级定点化处理核的输出为0,没有溢出。第一级定点化 处理核将数据0以及定点化公式传递给互连接口。第七步、互连接口把从上一模块接收到的数据和信息传递给第二个模块。假设两 个模块的数据形式一致,互连接口的转换单元不需要额外处理。
t ·> -
第八步、对于第二个模块执行上述的第四步至第六步,得到输出数据和定点化ii
第九步、互连接口把从第二个模块接收到的数据和信息传递给输出控制器。 第十步、输出控制器利用定点化处理信息将数据缩小至正确的数量级形成待输出 把A代入下面的公式计算RMSE RMSE = ^/(A-163433)2若RMSE小于10%,则将A作为最终结果输出;否则,将定点化处理公式中的左移 放大参数增加一形成新的处理公式,并从第三步开始执行新一轮的处理。重复以上的操作,能够得到下面的表格
第1轮第2轮第3轮第4轮第5轮中心削波的定标*QOQlQ2Q3Q4
8 *浮点数与定点数的Q值转换关系可表示为浮点数X转换为定点数y,y等于X乘 以2的Q次方取整。从上表中,能够发现在第5轮中,中心削波的定标和非线性放大的定标不同。这是 因为非线性放大的过程中发生了溢出(3214 > 231-1),所以模块2的定点化处理核修改了定 点化处理公式,使得实际的非线性放大运算为(321 >> I)4 = 655360000,使得结果满足 要求。最终得到的输出结果为160000,误差RMSE = 2%< 10%,至此整个运算和处理过 程结束。整个过程全部由自动定点化处理装置自动完成,保证了运算的正确性和高精度结 果的产生,同时不同模块可采用不同的定点化处理方式增强了系统的灵活性。
9
权利要求
一种信息定点化处理装置,其特征在于,包括输出控制器和若干组串联的定点化处理核以及对应的互连接口,其中定点化处理核控制进行数据信息处理的功能模块,同时与互连接口相连接并传输定点化处理的信息,互连接口与定点化处理核和不同功能模块相连接并传输模块间的数据和定点化处理信息,输出控制器与互连接口相连接并接收输出数据和定点化处理的信息,用以检查精度和决定是否输出结果或者是修正处理公式后继续进行处理。
2.根据权利要求1所述的信息定点化处理装置,其特征是,所述的定点化处理核包括 溢出控制单元、输入控制单元、处理控制单元、输出控制单元,其中溢出控制单元负责接收 上一级定点化处理核输出的定点化处理信息、判断当前模块是否有数据溢出、调整模块内 的定点化处理公式、并向下一级定点化处理核传递定点化处理的信息。输入控制单元负责 接收当前模块的输入数据并根据溢出控制单元给出的定点化处理公式对输入数据进行定 点化处理,最终提供给功能模块。处理控制单元在功能模块运行的过程中,根据溢出控制单 元给出的定点化处理公式对功能模块内的中间变量或者静态参数进行定点化处理。输出控 制单元接收功能模块的输出,待溢出控制单元检查确定不发生溢出后,传递给下一级定点 化处理核。
3.根据权利要求1所述的信息定点化处理装置,其特征是,所述的互连接口包括数据 接收单元、定点化信息接收单元、转换单元、数据输出单元、定点化信息输出单元,其中数 据接收单元负责接收上一级定点化处理核输出的输出数据,定点化信息接收单元接收上一 级定点化处理核输出的定点化信息,转换单元负责将两个接收单元的数据转换为下一级定 点化处理核需要的形式,数据输出单元向下一级定点化处理核输出所需数据。定点化信息 输出单元向下一级定点化处理核输出所需的定点化信息。
4.根据权利要求1所述的信息定点化处理装置,其特征是,所述的输出控制器包括误 差检测单元、输出转换单元。其中误差检测单元负责检测输出与理想输出的误差,如其满 足误差要求则允许输出否则将修改定点化处理公式,从第一级定点化处理核开始新一轮的 定点化处理。输出转换单元根据互连接口传递来的定点化信息将数据转换到正确的量级最 终予以输出。
5.一种根据权利要求1所述装置的处理方法,其特征在于,包括以下步骤第一步、设定定点化处理核以及互连接口以传递信息,设置输出控制器;第二步、系统初始化预定义定点化处理核的位宽用来判断是否发生溢出;预定义理 想输出和误差要求用以约束输出;预定义初始定点化公式;第三步、定点化处理第一级定点化处理核在第一轮处理中使用预定义初始定点化公 式,在第二级定点化处理核及以后轮次的处理使用输出控制器输出的处理公式,而其他模 块则使用由互连接口提供的上级模块的定点化信息;第四步、定点化处理核对输入信息以缺省倍率进行放大处理,并判断放大后的信息是 否溢出,当存在信息溢出时则将缺省倍率减少1并重新放大;否则通过输入控制单元将放 大后的信息传递给该定点化处理核对应的功能模块;第五步、定点化处理核根据溢出控制单元输出的定点化处理公式对功能模块内的中间 变量或静态参数进行定点化处理,并进行溢出检查当定点化处理溢出则将控制单元输出 的定点化处理公式中的左移放大参数减少1并作为更新后的定点化处理公式后返回第四步重新处理;否则执行第六步;第六步、定点化处理核对功能模块的输出进行溢出检查当存在输出信息溢出时,则将 控制单元输出的定点化处理公式中的左移放大参数减少1并作为更新后的定点化处理公 式后返回第四步重新处理;否则将本级定点化处理的输出信息输出至互连接口 ;第七步、互连接口通过定点化信息接收单元和数据接收单元分别接收上一级定点化处 理核输出的定点化信息,然后将定点化信息进行数据转换后通过输出单元传递给下一级定 点化处理核,直至达到最后一级定点化处理核,该级互连接口将定点化信息传输至输出控 制器;第八步、输出控制器的输出转换单元将定点化信息进行适配处理后,由误差检测单元 对适配后的定点化信息进行误差检测当误差要求超过容限时,将定点化处理公式中的左 移放大参数增加1并作为更新后的定点化处理公式后返回第三步开始新一轮的定点化处 理;否则输出适配后的定点化信息。
全文摘要
一种计算机应用技术领域的信息定点化处理装置,包括输出控制器和若干组串联的定点化处理核以及对应的互连接口,其中定点化处理核控制进行数据信息处理的功能模块,同时与互连接口相连接并传输定点化处理的信息,互连接口与定点化处理核和不同功能模块相连接并传输模块间的数据和定点化处理信息,输出控制器与互连接口相连接并接收输出数据和定点化处理的信息,用以检查精度和决定是否输出结果或者是修正处理公式后继续进行处理。本发明具有更高的处理效率和处理精度。
文档编号G06F9/318GK101907985SQ20101024765
公开日2010年12月8日 申请日期2010年8月6日 优先权日2010年8月6日
发明者刘佩林, 孔吉, 王俊 申请人:上海交通大学;富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1