动态调整储存数值于暂存器的架构及其方法

文档序号:6756660阅读:149来源:国知局
专利名称:动态调整储存数值于暂存器的架构及其方法
技术领域
本发明是有关于一种动态调整储存数值于暂存器的架构及其方法,特别有关于可动态调整复数个数值于暂存器的储存位置,透过一侦测单元与一位移单元的提供,依据一差异值平移复数个数值储存于该暂存器的位置,以达成动态调整储存数值于暂存器的功用。
背景技术
由于资讯科技的发达与生活水准的提升,民众对于电脑的需求由早期利用电脑取代人工作业,至现今已转变为要求电脑提供快速的存取以减少民众的等待时间为主要目的,为增加电脑的存取速度,唯有增加两个元件之间的存取时间或传输速率才得以满足此发展趋势,举例来说,将硬碟的资料先读取至主记忆体中,以CPU读取主记忆体存放资料的方式来替代读取硬碟资料的方式,增加电脑的存取速度与传输速率,由于此发展趋势的提升使得储存媒体装置于电脑的发展上产生重大的变革。
按储存媒体发展以来,从初期的磁带与磁蕊记忆体,直至今日的光碟、磁碟、硬碟、主记忆体以及暂存器,其价格与速度呈现正向的发展,其中以暂存器速度最快也最为昂贵。由于资讯家电、内嵌式系统以及数位信号处理器的发展,配合上述资讯科技发展之暂存器的需求将日趋提升,因此如何使暂存器达到更高的效能为目前研究暂存器应积极发展的重点。
现今的暂存器主要分为16位元与32位元的暂存器,由于暂存器的价格较高,因此为节省成本,这些暂存器多半支援定点运算而不支浮点运算,请一并参阅第一A图至第一C图,其中,图1A为习知的数值的示意图,该图示为一数值1’,该数值1’包含一符号位元10’、至少一整数位元11’以及至少一小数位元12’;图1B为习知的16位元暂存器储存一数值的示意图,该图示为仅支援定点运算的一暂存器2’,该暂存器2’包含一符号位元20’与至少一整数位元21’,其中该符号位元20’为该暂存器2’的最高位元;以及图1C为图1B的暂存器储存图1A的数值的示意图。该暂存器2’储存该数值1’的方法是将该数值1’的该符号位元10’储存于该暂存器2’的符号位元20’的位置,将该整数位元11’与该小数位元12’依序由低位元往高位元的方向储存于该暂存器2’的该整数位元21’的位置,储存结果如图1C所示,由于该暂存器2’仅支援定点运算,因此无法储存该小数位元12’于该暂存器2’内,另外当该暂存器2’储存该数值1’的整数位元11’后,尚留有未使用的储存空间时,暂存器2’会自动补0于未使用的储存空间,则造成该暂存器2’的整数位元21’空间的浪费。
此外,当该数值1’为一较小值时,该数值1’的小数位元12’势必为日后读取该数值1’进行运算时,重要的判断因素,若无法储存该数值1’的小数位元12’,将使计算出来的结果产生较大的误差。
请参阅图2,其为习知的解码压缩音讯储存于支援定点运算的暂存器的流程图,如图所示,该方法包含下列步骤步骤S10’提供一压缩音讯;步骤S11’解码该压缩音讯以产生复数个数值;步骤S12’反量化该复数个数值,其中,每一该数值包含有至少一整数位元与至少一小数位元;步骤S13’储存该复数个数值于该暂存器,其中,该暂存器仅储存该复数个数值的整数位元;步骤S14’读取储存于该暂存器内反量化的该复数个数值,解码该复数个数值,解码的每一该数值包含有整数位元与小数位元,执行步骤S13’,但该步骤S13’储存的该复数个数值为解码的该复数个数值;步骤S15’读取储存于该暂存器内解码的该复数个数值,反滤波该复数个数值,反滤波之每一该数值包含有整数位元与小数位元,执行步骤S13’,但该步骤S13’储存的该复数个数值为反滤波的该复数个数值;以及步骤S16’输出该暂存器内反滤波的该复数个数值。
由图2得知,该暂存器2’仅支援定点运算,因此无法储存该该复数个数值之小数位元于该暂存器2’内,当该音讯资料为一较小值时,易造成压缩音讯于解码过程产生较大的误差,使民众无法收听悦耳的音乐。
因此,如何针对上述问题而提出一种动态调整储存数值于暂存器的架构及其方法,不仅可改善传统定点暂存器无法储存数值的小数位元的缺点,又可降低定点暂存器储存空间的浪费,长久以来一直是使用者殷切盼望,本发明人基于多年从事于动态调整储存数值于暂存器之架构及其方法相关产品的研究、开发、及销售实务经验,乃思及改良的意念,穷其个人专业知识,经多方研究设计、专题探讨,终于研究出一种动态调整储存数值于暂存器的架构及其方法改良,可解决上述的问题。

发明内容
本发明的主要目的,在于提供一种动态调整储存数值于暂存器的架构及其方法,其是用于音讯数值处理,用以储存复数个数值,每一该数值包含至少一整数位元与至少一小数位元,本发明藉由一侦测单元侦测该复数个数值之整数位元之个数,用以获知该复数个数值的最大整数位元的个数与该暂存器可储存的整数位元之个数的差异值,一位移单元依据该差异值平移(Shift)该数值储存于该暂存器的位置,以达成动态调整储存数值于暂存器的目的。
本发明的次要目的,在于提供一种动态调整储存数值于暂存器的架构及其方法,本发明藉由该位移单元依据该差异值,平移该复数个数值储存于该暂存器的位置,让该复数个数值的小数位元得以储存于该暂存器的整数位元的位置,进一步使该暂存器支援浮点运算,且能够有效使用该暂存器提供的储存空间。
本发明的再一目的,在于提供一种动态调整储存数值于暂存器的架构及其方法,其是用于储存复数个数值,每一该数值包含至少一整数位元与至少一小数位元,本发明藉由该侦测单元与该位移单元的提供,使该复数个数值的小数位元得以储存于该暂存器的整数位元的位置,当一运算单元读取储存于该暂存器的该复数个数值,进行运算动作时,可提升运算后的该复数个数值的精确度。
为达上述的目的及优点,本发明的动态调整储存数值于暂存器饿架构及其方法,其用于音讯数值处理,用以储存复数个数值,该数值包含至少一整数位元与至少一小数位元,本发明是揭露一侦测单元侦测该复数个数值的整数位元的个数,用以获知该复数个数值的最大整数位元的个数与该暂存器可储存的整数位元的个数的差异值;以及一位移单元,依据该差异值,平移该复数个数值储存于该暂存器的位置,透过该侦测单元与该位移单元的提供,让该复数个数值的小数位元储存于该暂存器的整数位元的位置,以动态调整储存数值储存于暂存器的位置,进一步使该暂存器支援浮点运算,且能够有效使用该暂存器提供的储存空间。
再者,本发明亦可用于储存包含有整数位元与小数位元的数值,使该数值的小数位元储存于该暂存器的整数位元的位置,于读取储存于该暂存器之该复数个数值进行运算动作时,可提升该运算单元运算数值的精确度。


图1A其为习知的数值示意1B其为习知的6位元暂存器示意图;图1C其为习知的图1B暂存器储存图1A的数值示意图;图2其为习知的解码压缩音讯储存于支援定点运算的暂存器的流程图;图3其为本发明的较佳实施例的方块图;图4A其为本发明的数值的示意图;图4B其为本发明的16位元暂存器的示意图;图4C其为图4B的暂存器储存图4A的数值的示意图;图5A其为本发明的另一较佳实施例的方块图;图5B其为本发明的另一较佳实施例的方块图;图5C其为本发明的另一较佳实施例的方块图;以及图6其为本发明的较佳实施例的流程图。
其中,1’数值、10’符号位元、11’整数位元、12’小数位元、2’暂存器、20’符号位元、21’整数位元、5输入单元、10音讯处理单元、15侦测单元、20位移单元、25暂存器、250符号位元、251整数位元、252最高位元方向、30数值、300符号位元、301整数位元、302小数位元、40解码单元、45前置位移单元、50前置暂存器、55运算单元、551反量化单元、552声道音讯解码单元、553反滤波单元、60输出调整单元、65输出单元。
具体实施例方式兹为使审查员对本创作的结构特征及所达成的功效有更进一步的了解与认识,谨以较佳实施例及配合详细的说明,说明如后一般习知的暂存器仅支援定点运算,因此储存复数个数值于该暂存器时,常无法储存该复数个数值饿小数位元,当读取该复数个数值进行运算时,易产生较大的误差,此外亦无法有效使用该暂存器提供饿整数位元的储存空间,致使该暂存器提供的储存空间的浪费,故,本发明是揭露一种动态调整储存数值于暂存器的架构及其方法,藉由一侦测单元与一位移单元的提供,使该复数个数值的小数位元得以储存于该暂存器饿整数位元的位置,进而让该暂存器具有动态调整功能。
请参阅图3,其为本发明的较佳实施例的方块图,本发明是用于音讯数值处理,储存复数个数值,每一该数值包含至少一整数位元与至少一小数位元,如图所示,本发明的主要架构包含一音讯处理单元10,该音讯处理单元10包含有一侦测单元15、一位移单元20以及一暂存器25。其中该侦测单元15侦测复数个数值的整数位元的个数,用以获知该复数个数值的最大整数位元的个数与该暂存器25的整数位元之个数的差异值,该位移单元20依据该差异值,平移该复数个数值储存于该暂存器25的位置,如此,以达成动态调整储存数值于暂存器25的目的。
本发明进一步提供一索引档案,用以记录该差异值。此外,上述提及的该复数个数值,进一步包含有一符号位元,其系储存于该暂存器25的最高位元,且于该位移单元20平移该复数个数值储存于该暂存器25的位置时,该位移单元20不平移该符号位元。
此外,当相邻音讯资料产生重叠(overlap)的情况时,本发明藉由保留上一次平移所参考的差异值,将上一个复数个数值根据目前欲平移的复数个数值,重新进行调整,藉此以减少重叠的状况。
请一并参阅图3、图4A、图4B以及图4C,在此实施例中是以储存一数值于暂存器作为说明,如图4A所示,其为本发明数值的示意图,该图示为有一数值30,该数值30包含一符号位元300、至少一整数位元301以及至少一小数位元302;图4B为本发明的16位元暂存器的示意图,该暂存器25包含有一符号位元250与至少一整数位元251,其中该符号位元250为该暂存器25的最高位元;以及图4C,其为图4B暂存器储存图4A数值的示意图。该暂存器25储存该数值30的方法是将数值30的符号位元300储存于该暂存器25的符号位元250后,透过该侦测单元15侦测该数值的整数位元的个数,用以获知与该暂存器25的整数位元的个数的差异值,如图4A与图4B得知该差异值为6,该位移单元20依据该差异值,往该暂存器25的最高位元方向252,平移该整数位元301与该小数位元302该差异值的位元,亦即平移6个位元,将平移后的该整数位元301与小数位元302储存于该暂存器25的该整数位元251,储存后再将该暂存器25内未使用的储存空间补0,储存结果如图4C所示。
由图3、图4A、图4B以及图4C的说明得知,本发明藉由该侦测单元15与该位移单元20的提供,平移该数值30储存于该暂存器25的位置,日后欲使用储存于该暂存器25的数值30时,再根据该差异值反平移(Inverse Shift)该数值30,使该反平移的数值30包含整数位元301与小数位元302,以达成该暂存器25支援浮点运算的目的。
请一并参阅图3与图5A,图5A为本发明另一较佳实施例的方块图,如图所示,本发明用于储存复数个数值,该架构包含有一输入单元5,其系提供一压缩音讯于该解码单元40以产生该复数个数值;一前置位移单元45将该复数个数值平移至该前置暂存器50,在此实施例中该前置暂存器50的位元个数系大于该暂存器20的位元个数,而后,经由该侦测单元15侦测该复数个数值的最大整数位元的个数与该暂存器25可储存的整数位元的个数,以获知该差异值,该位移单元20依据此差异值将该前置暂存器50内的该复数个数值平移到与暂存器25相适应;一运算单元55、其系读取该暂存器25储存饿该复数个数值,以进行运算动作;一输出调整单元60读取储存于该暂存器25的该复数个数值,侦测每一该数值的一位元个数与一脉冲码调变(PulseCode Modulation;PCM)讯号所需的一位元个数,以调整该复数个数值;以及一输出单元65,用以转换该输出调整单元60输出的该复数个数值,以输出该脉冲码调变讯号,如侦测该数值为15个bit,而在输出成PCM时,要再放大1个bit,以使该输出单元65输出该脉冲码调变讯号,藉此,经由该前置暂存器50的提供,以暂存解码的复数个数值,使该位移单元20平移该复数个数值至该暂存器25时不需再执行解码动作。
请一并参阅图3与图5B,此实施例详细说明该运算单元55的细部架构,图5B为本发明另一较佳实施例的方块图,如图所示,本发明用于储存包含有M/S声道(Middle/Side Channel)之压缩音讯,该架构的该运算单元55包含有一反量化单元551、一声道音讯解码单元552以及一反滤波单元553,其中,该反量化单元551读取储存于该暂存器25饿该复数个数值,进行反量化处理,传送该反量化的该复数个数值于该前置位移单元45,以平移该复数个数值于该前置暂存器50,供该侦测单元15与该移位单元20,进行侦测与平移处理后,储存于该暂存器25内,其次,该声道音讯解码单元552读取该暂存器25内反量化单元551产生的该复数个数值,依据该差异值,反平移反量化的该复数个数值,使每一该数值包含有整数位元与小数位元,解码该反平移的该复数个数值,传送解码的该复数个数值于该前置位移单元45,以平移该复数个数值于前置暂存器50,并透过侦测与平移处理将解码的该复数个数值存回该暂存器25内,最后,该反滤波单元553读取该暂存器25内声道音讯解码单元552产生的该复数个数值,依据该差异值,反平移解码的该复数个数值,使解码的每一该数值包含有整数位元与小数位元,反滤波该反平移的该复数个数值,传送该反滤波的该复数个数值于该前置位移单元45,以平移该复数个数值于于前置暂存器50,透过侦测与平移处理将反滤波的该数值存回该暂存器25内。
请参阅图5C,为本发明的另一较佳实施例的方块图,如图所示,本发明用于储存未包含M/S声道的数值,该架构的该运算单元55仅包含一反量化单元551以及一反滤波单元553,该数值经由该反量化单元551进行反量化处理后,由该反滤波单元553进行反滤波处理。
由上述得知,本发明透过该侦测单元15与该位移单元20提供,使该复数个数值的小数位元储存于该暂存器25的整数位元的位置,除有效使用该暂存器25提供的储存空间外,于读取该暂存器25内的该复数个数值进行运算时,能够反平移该该复数个数值,使该数值包含有整数位元与小数位元,不会造成小数位元的遗失,因此能够减少误差结果的产生。
请参阅图6,为本发明的较佳实施例的流程图,该方法包含下列步骤
步骤S20提供一压缩音讯;步骤S21解码该压缩音讯以产生复数个数值;步骤S22侦测该复数个数值之整数位元之个数,用以获知与该暂存器之整数位元的个数的差异值;步骤S23记录该差异值于一索引档案;步骤S24读取该差异值,且依据该差异值平移该复数个数值储存于该暂存器的位置;步骤S25读取储存于该暂存器内的该复数个数值,反量化该复数个数值,使每一该数值包含整数位元与小数位元,解码该反平移的该复数个数值并执行步骤S22至执行步骤S24,但平移的该复数个数值为反量化的该复数个数值;步骤S26读取储存于该暂存器内反量化的该复数个数值,依据该差异值,反平移反量化的该复数个数值,使每一该数值包含整数位元与小数位元,解码该反平移的该复数个数值并执行步骤S22至执行步骤S24,但平移的该复数个数值为解码的该复数个数值;步骤S27读取储存于该暂存器内解码的该复数个数值,依据该差异值,反平移解码的该复数个数值,使每一该数值包含整数位元与小数位元,反滤波该反平移的该复数个数值并执行步骤S22至执行步骤S24,但平移的该复数个数值为反滤波的该复数个数值;步骤S28读取该暂存器内反滤波之该复数个数值,反平移反滤波之该复数个数值,使每一该数值包含整数位元与小数位元后,输出该反平移之该复数个数值。
综上所述,本发明是有关于一种动态调整储存数值于暂存器的架构及其方法,本发明是揭露一侦测单元与一位移单元,该位移单元依据该侦测单元获知的差异值,平移该复数个数值储存于一暂存器的位置。此外,于解码压缩音讯的过程中,本发明亦可透过该侦测单元与该位移单元的提供,分别依据该差异值平移一反量化单元、一声道解码单元以及一反滤波单元产生的该复数个数值储存于该暂存器的位置。
以上所述,仅为本创作的一较佳实施例而已,并非用来限定本创作实施的范围,凡依本创作申请专利范围所述的形状、构造、特征及原理等所为的变化与修饰,均应包括于本创作的申请专利范围内。
权利要求
1.一种动态调整储存数值于暂存器的架构,其是用于音讯数值处理,储存复数个数值,每一该数值包含至少一整数位元与至少一小数位元,该架构包含一侦测单元,侦测该复数个数值的整数位元的个数,用以获知该复数个数值的最大整数位元的个数与一暂存器可储存的整数位元的个数的差异值;一位移单元,依据该差异值,平移(Shift)该复数个数值储存于该暂存器的位置。
2.如申请专利范围第1项所述的动态调整储存数值于暂存器的架构,其中,每一该数值包含有一符号位元,其储存于该暂存器的最高位元,该位移单元平移该复数个数值储存于该暂存器的位置时,该位移单元不平移该符号位元。
3.如申请专利范围第1项所述的动态调整储存数值于暂存器的架构,其中,更包含有一解码单元,解码一压缩音讯,产生该复数个数值。
4.如申请专利范围第3项所述的动态调整储存数值于暂存器的架构,其中,更包含有一输入单元,提供一压缩音讯于该解码单元,进行解码动作。
5.如申请专利范围第3项所述的动态调整储存数值于暂存器的架构,其中,更包含一前置暂存器,储存该解码单元解码的该复数个数值,供该侦测单元进行侦测动作。
6.如申请专利范围第5项所述的动态调整储存数值于暂存器的架构,其中,更包含有一前置位移单元,位移该解码单元解码的该复数个数值于该前置暂存器的位置。
7.如申请专利范围第1项所述的动态调整储存数值于暂存器的架构,其中,更包含一运算单元,读取该暂存器储存的该复数个数值,进行运算动作。
8.如申请专利范围第7项所述的动态调整储存数值于暂存器的架构,其中,该运算单元更包含一反量化单元,读取储存于该暂存器内的该复数个数值,进行反量化处理,传送该反量化的该复数个数值于一前置位移单元,平移该复数个数值至一前置暂存器内,以供该位移单元依据该侦测单元获知的差异值,平移反量化的该复数个数值储存于该暂存器的位置。
9.如申请专利范围第8项所述的动态调整储存数值于暂存器的架构,其中,该运算单元更包含有一声道音讯解码单元,其读取储存于该暂存器内该反量化单元产生的该复数个数值,依据该差异值,反平移(Inverse Shift)该复数个数值,使每一该数值包含整数位元与小数位元,解码反平移的该复数个数值并将解码的该复数个数值传送至该前置位移单元,平移该复数个数值至该前置暂存器内,以供该位移单元依据该侦测单元获知的差异值,平移解码的该复数个数值储存于该暂存器的位置。
10.如申请专利范围第9项所述的动态调整储存数值于暂存器饿架构,其中,该运算单元更包含有一反滤波单元,其读取储存于该暂存器之该声道音讯解码单元产生的该复数个数值,依据该差异值,反平移该复数个数值,使每一该数值包含整数位元与小数位元,反滤波该反平移的该复数个数值并将反滤波的该复数个数值传送至该前置位移单元,平移该复数个数值至该前置暂存器内,以供该位移单元依据该侦测单元获知的差异值,平移反滤波的该复数个数值储存于该暂存器的位置。
11.如申请专利范围第8项所述的动态调整储存数值于暂存器的架构,其中,该运算单元更包含有一反滤波单元,其读取储存于该暂存器的该反量化单元产生的该复数个数值,依据该差异值,反平移该复数个数值,使该数值包含整数位元与小数位元,反滤波该反平移的该复数个数值并将反滤波的该复数个数值传送至该前置位移单元,平移该复数个数值至该前置暂存器内,以供该位移单元依据该侦测单元获知的差异值,平移反滤波的该复数个数值储存于该暂存器的位置。
12.如申请专利范围第10项或第11项所述的动态调整储存数值于暂存器的架构,其中,更包含有一输出调整单元,其读取储存于该暂存器的该反滤波单元产生的该复数个数值,侦测该数值的一位元个数与一脉冲码调变(Pulse Code Modulation;PCM)讯号所需的一位元个数,调整该复数个数值为该脉冲码调变(Pulse Code Modulation;PCM)讯号所需的位元个数。
13.如申请专利范围第12项所述的动态调整储存数值于暂存器的架构,其中,更包含有一输出单元,用以转换该输出调整单元输出的该复数个数值,以输出该脉冲码调变讯号。
14.如申请专利范围第1项所述的动态调整储存数值于暂存器的架构,其中,更包含有一索引表,记录该差异值。
15.一种动态调整储存数值于暂存器的方法,其用于音讯数值处理,储存复数个数值,每一该数值包含至少一整数位元与至少一小数位元,该方法包含下列步骤侦测该复数个数值之整数位元的个数,用以获知该复数个数值的最大整数位元的个数与该暂存器可储存之整数位元的个数的差异值;读取该差异值,依据该差异值平移该数值储存于该暂存器的位置。
16.如申请专利范围第15项所述的动态调整储存数值于暂存器的方法,其中,于侦测该复数个数值的整数位元的个数的步骤前,平移该复数个数值于一前置暂存器。
17.如申请专利范围第16项所述的动态调整储存数值于暂存器的方法,其中,于平移该复数个数值于该前置暂存器的步骤前,解码该压缩音讯,产生该复数个数值。
18.如申请专利范围第17项所述的动态调整储存数值于暂存器的方法,其中,于读取该差异值的步骤前,提供一索引表以记录该差异值。
全文摘要
本发明是有关于一种动态调整储存数值于暂存器的架构及其方法,其是用于储存复数个数值,每一该数值包含至少一整数位元与至少一小数位元,本发明是揭露一侦测单元,其侦测该复数个数值的整数位元之个数,用以获知该复数个数值的最大整数位元的个数与该暂存器可储存的整数位元的个数的差异值;以及一位移单元,依据该差异值,平移(Shift)该复数个数值储存于该暂存器的位置,透过该侦测单元与该位移单元的提供,达成动态调整储存数值于暂存器的功用者。
文档编号G11C7/00GK1655128SQ20051000879
公开日2005年8月17日 申请日期2005年3月1日 优先权日2005年3月1日
发明者李文杰, 王海明, 李正文 申请人:英特维数位科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1