第7章应用程序设计 内容提要: ■7.1定标与溢出处理 ■7.2基础算术运算 ■7.3FIR滤波器 ■7.4IIR滤波器 ■7.5快速傅里叶变换(FFT) ■7.6 DSPLIB的使用 习题 3
第7章 应用程序设计 内容提要: ◼ 7.1 定标与溢出处理 ◼ 7.2 基础算术运算 ◼ 7.3 FIR滤波器 ◼ 7.4 IIR滤波器 ◼ 7.5 快速傅里叶变换(FFT) ◼ 7.6 DSPLIB的使用 习题 3
7.1 定标与溢出处理 ■7.1.1数的定标 ■7.1.2溢出的处理方法 ■7.1.3常用信号处理算法中的定标方法 4
7.1 定标与溢出处理 ◼ 7.1.1 数的定标 ◼ 7.1.2 溢出的处理方法 ◼ 7.1.3 常用信号处理算法中的定标方法 4
7.1.1数的定标 数的定标: 对C55x而言,参与数值运算的数是16位的整型数。 但数学运算过程中的数不一定都是整数。那么,DSP 芯片是如何处理小数的呢? 这其中的关键就是由程序员来确定一个数的小数点 处于16位中的哪一位,这就是数的定标。 ◆通过设定一个16位数的小数点处于该数中的哪一 位,可以表示不同大小和不同精度的小数。 5
7.1.1 数的定标 ⚫数的定标: 对C55x而言,参与数值运算的数是16位的整型数。 但数学运算过程中的数不一定都是整数。那么,DSP 芯片是如何处理小数的呢? 这其中的关键就是由程序员来确定一个数的小数点 处于16位中的哪一位,这就是数的定标。 ◆通过设定一个16位数的小数点处于该数中的哪一 位,可以表示不同大小和不同精度的小数。 5
7.1.1数的定标 1.小数定点数的定标(scale) 计算机有两种数据表示方法:3 130 2322 0 >浮点数表示法 阶码E 尾数M 32位浮点数真值:x=仁1)×(1.M)×2(B-12 >定点数表示法 二进制小数 定点数就是小数点位置固定的数。数据的表示形式是: 符号位(1位)整数部分(m位).小数部分(n位) C55xDSP是定点芯片,采用补码形式来表示无符号 数和有符号数。 6
1.小数定点数的定标(scale) 计算机有两种数据表示方法: ➢浮点数表示法 ➢定点数表示法 定点数就是小数点位置固定的数。数据的表示形式是: 6 7.1.1 数的定标 C55x DSP是定点芯片,采用补码形式来表示无符号 数和有符号数。 S 阶码E 尾数 M 31 30 23 22 0 32位浮点数真值: x = (-1) s (1.M) 2 (E-127) 二进制小数 符号位(1位)整数部分(m位).小数部分(n位)
7.1.1数的定标 2.数的定标主要采用Q表示法 CPU在执行指令时,并不知道处理的数据是整数 还是小数,也不能指出小数点的位置。在编程时必 须由程序员指出一个数的小数点处于哪一位,这就 是定标(scale)的概念。 常用的定标方法是Q表示法,Q表示法用Q0,Q1,… Qi,Q15分别表示小数点在D0位之后、D1位之 后、.Di位之后、.D15位之后。 严格地,是Qm.n格式:n位小数,m位整数,1位符 号位,共m+n+1位二进制数。也称S表示法Sm.n 符号位(1位)整数部分(m位).小数部分(n位) 7
2.数的定标主要采用Q表示法 CPU在执行指令时,并不知道处理的数据是整数 还是小数,也不能指出小数点的位置。在编程时必 须由程序员指出一个数的小数点处于哪一位,这就 是定标(scale)的概念。 常用的定标方法是Q表示法, Q表示法用Q0, Q1,… Qi, …, Q15 分别表示小数点在D0位之后、D1位之 后、…Di位之后、…D15位之后。 7 7.1.1 数的定标 严格地, 是Qm.n 格式: n位小数, m位整数, 1位符 号位, 共m+n+1位二进制数。 也称S表示法Sm.n 符号位(1位)整数部分(m位).小数部分(n位)