●不同的Q所表示的数不仅范围不同,而且精度也不相同: ◆Q越大,数值范围越小,但精度越高; ◆Q越小,数值范围越大但精度就越低; 例如:Q0数值范围是-32768到+32767,其精度为1; Q15的数值范围为-1到0.9999695,精度为 1/32768=0.00003051 对定点数而言,数值范围与精度是一对矛盾。一个变量 要想能够表示比较大的数值范围,必须以栖牲精度为代 价;而想提高精度,则数的表示范围就相应地减小。 在实际的定点算法中,应该根据具体问题进行折衷处 理,以达到最佳效果。 10
⚫不同的Q所表示的数不仅范围不同, 而且精度也不相同: ◆ Q越大, 数值范围越小, 但精度越高; ◆ Q越小, 数值范围越大,但精度就越低; 例如: Q0数值范围是-32768到+32767,其精度为1; Q15的数值范围为-1到0.9999695, 精度为 1/32768 = 0.00003051 ➢对定点数而言, 数值范围与精度是一对矛盾。一个变量 要想能够表示比较大的数值范围, 必须以牺牲精度为代 价; 而想提高精度, 则数的表示范围就相应地减小。 ➢在实际的定点算法中,应该根据具体问题进行折衷处 理, 以达到最佳效果。 10
。在C55x中,16位整数采用补码形式表示。每个采用Qi定标的 16位数用1个符号位、i个小数位和15-i个整数位来表示。 Q15格式小数位权值 LSB MSB(最高位) (最低位) b15 b14 b13 b12 ●● bi bo 一1 1/2 1/4 1/8 2-14 215 Q14格式小数位权值 LSB MSB(最高位) (最低位) b15 b14 b13 b12 b1 bo -21·1/2 1/4 2-13 2-14 Q0格式各位权值 LSB MSB(最高位) (最低位) b15 b14 b13 b12 ●●● b1 bo -215 214 213 212 21 20 11
b14 b13 b12 … b1 b0 -1 1/2 1/4 1/8 … 2-14 2-15 MSB(最高位) LSB (最低位) Q15格式小数位权值 b15 ⚫在C55x中, 16位整数采用补码形式表示。每个采用Qi定标的 16位数用1个符号位、i个小数位和15-i个整数位来表示。 11 b14 b13 b12 … b1 b0 -215 214 213 212 … 21 20 MSB(最高位) Q0格式各位权值 b15 LSB (最低位) b14 b13 b12 … b1 b0 -2 1 1/2 1/4 … 2-13 2-14 MSB(最高位) Q14格式小数位权值 b15 LSB (最低位) . .
·同一个16位数,若小数点设定的位置不同,它所 表示的数也就不同。 定标不同 表7-2同一的数在不同定标方式下所表示的具体数值 Q格式十六进制数 二进制数 十进制数 Q0 2000H 0010000000000000b 8192 Q14 2000H 0010000000000000b 0.5 Q15 2000H 0010000000000000b 0.25 Q0 E000H 1110000000000000b -8192 Q14 E000H 1110000000000000b -0.5 Q15 E000H 1110000000000000b -0.25 12
表7-2 同一的数在不同定标方式下所表示的具体数值 ⚫ 同一个16位数,若小数点设定的位置不同,它所 表示的数也就不同。 Q格式 十六进制数 二进制数 十进制数 Q0 2000H 0010 0000 0000 0000b 8192 Q14 2000H 0010 0000 0000 0000b 0.5 Q15 2000H 0010 0000 0000 0000b 0.25 Q0 E000H 1110 0000 0000 0000b -8192 Q14 E000H 1110 0000 0000 0000b -0.5 Q15 E000H 1110 0000 0000 0000b -0.25 12 定标不同 . . . . .
7.1 定标与溢出处理 ■7.1.1数的定标 ■7.1.2溢出的处理方法 ■7.1.3常用信号处理算法中的定标方法 TMS320C55x DSP Programmer's Guide Preliminary Draft (SPRU376A.2001) 5.5 Methods of Handling Overflows 13
7.1 定标与溢出处理 ◼ 7.1.1 数的定标 ◼ 7.1.2 溢出的处理方法 ◼ 7.1.3 常用信号处理算法中的定标方法 13 5.5 Methods of Handling Overflows TMS320C55x DSP Programmer’s Guide Preliminary Draft (SPRU376A, 2001年)
7.1.2溢出的处理方法 1.溢出 ●如果算术运算结果超出寄存器所能表示的最大 数就会出现溢出; ◆因为16位定点DSP的动态范围有限,所以在使 用时必须注意动态范围以防溢出 ●溢出还与输入信号的特性和运算法则有关。 14
7.1.2 溢出的处理方法 ⚫如果算术运算结果超出寄存器所能表示的最大 数就会出现溢出; ◆因为16位定点DSP的动态范围有限,所以在使 用时必须注意动态范围以防溢出; ⚫溢出还与输入信号的特性和运算法则有关 。 1. 溢出 14