第一专题量化误差
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浮点数在FPGA IP核中的表示
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示
数字运算中的有效字长效应
结论
定点数:数据的二进制数采用定点表示动态范围小,有溢出,尾数处 理会带来截尾或舍入误差。由此,在数字系统的计算中会发生有限字 长效应。
浮点数:浮点表示法尾数的字长决定浮点表示的精度,因此在硬件中 (如DSP、FPGA)实现计算时,由于硬件资源的限制及计算速率的 要求对尾数的处理也会带来截尾或舍入误差。由于浮点表示的阶码决 定浮点数的动态范围,因此与定点相比,浮点有更大的动态范围,且 不易溢出。
主要内容
数字运算过程中的有效字长效应 输入信号经A/D变换产生的量化误差
滤波器的系数量化误差 总结
输入信号经A/D变换产生的量化误差
A/D变换的工作原理
A/D转换器是一种将输入的模拟信号x(t)转换为b位二进制数字信号的器 件。b的数值可以是8,12或高至20。它可以分为以下两部分: 采样:时间离散,幅度连续; 量化:数字编码,对采样序列作舍入或截尾处理,得有限字长数字信号 。 A/D变换器的功能原理图如下图所示。
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示 例:此处以32位单精度浮点数(1,8,23)为例:
符号位 计算结果
x (1)s 1.m 2ebias (1)1 1.100100101101 2(133127) =(-1100100.101101)2 =(100.703125)10
数字运算中的有效字长效应
定点数表示的缺点
结论
定点数作加减法时结果可能会 “溢出”
乘数法据运的算二不进溢制出数,采但用字定长点要表增示加动一态倍范。围小,有溢出,尾数处
理例会:带b=来3=×截>00.尾.0110或11 舍入误差。由此,在数字系统的计算中便会发
生有限字长效10应1 。 成为六位数,截尾变成0.001。产生误
101
式中, 为s符号位; 为B整数宽度,表示长度为 位B; 表示C 小
数宽度。
十进制计算公式为
B
C
x (1)s ( ai 2i bi 2 j )
i 1
j 1
数字运算中的有效字长效应
定点数在FPGA IP 核中表示
数字运算中的有效字长效应
定点数在FPGA IP 核中表示
数字运算中的有效字长效应
数字运算中的有效字长效应
浮点数的表示 例1:F=0.101×2010=0.625×4=2.5
符号位
符号位
01010010
数字运算中的有效字长效应
浮点数的表示
例2:若两个二进制浮点数
求 x1 及x2 x1 x2
x1 2010 0.1100, x2 2000 0.1001
x1 x2 x1 x2
数字运算中的有效字长效应
小结
综上所述,在数字运算中,数据的二进制数无论是由 定点表示还是由浮点表示,由于硬件的资源及计算速率的 要求,计算结果中均有截尾误差或舍入误差,即存在有效 字长效应。除非我们以资源或速率换取高精度,否则截尾 误差及舍入误差是难免的。
[1] 程佩青.数字信号处理教程(第三版).清华大学出版社.2007 [2] 陈后金.数字信号处理(第二版).高等教育出版社.2004
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示
最高位为符号位,O表示正数,1表示负数。其后是用原码表
示的指数e,若指数为E位,则表示范围为: 0 ~ 2,指E 数1的偏移量
下式表示:
bias 2E1 1
指数表示移位数:(2E1 1) ~ 2E1 浮点数字长的代数表达式为:
x (1)s 1.m 2ebias
前言
数字信号处理的实质:一组数值运算 从设计的角度来讨论:认为数字是无限精度的 从实现的角度考虑:数字的精度就是有限的 从设计时的无限精度到实现时的有限精度,会产生 相对于原设计系统的误差,严重时会导致系统崩溃。
前言
有限字长的影响,主要表现在以下三方面
数字运算过程中的有效字长效应
数字运算过程中为限制位数而进行尾数处理、防止溢出而 产生的有效字长效应。
输入信号经A/D变换产生的量化误差
即A/D变换器将模拟输入信号变为一组离散电平时产生的 量化误差。
滤波器的系数量化误差
即把系统系数用有限二进制数表示时产生的量化误差。
主要内容
数字运算过程中的有效字长效应 输入信号经A/D变换产生的量化误差
滤波器的系数量化误差 总结
数字运算中的有效字长效应
定点数的表示
xຫໍສະໝຸດ Baidu (t)
抽样x(nx)(n)x量a (m化)器
xˆ(n)
输入信号经A/D变换产生的量化误差
量化误差的来源
抽样 产生抽样序列x(n)=x(t)|t=nT=x(nT), x(n): 可看成是一个无限精度的数字信号 在满足抽样定理的前提下,模拟信号时间离散化的过程是可逆的。
量化 对抽样序列进行幅度上的离散化之后,用某种格式的数字代码来表示。 量化过程是不可逆的 必定要引入量化误差或量化噪声。 量化噪声的大小决定了A/D转换器的动态范围,是恒量A/D转换器性
差。
0.001111
数字运算中的有效字长效应
浮点数的表示
数码中小数点的位置是浮动的,b位二进制数分成指数部分 和尾数部分。浮点数F可表示为:
F M 2c
M:尾数,决定浮点的精
度。0.5 M 1
……
2C:指数,决定浮点 数的动态范围 C:阶码
……
符号位
bm
bc
符号位,正数小数点
往右移,负数往左移
将 x的2 阶码变成与 一x1样: x2 2010 0.001001
两数相加可得:2010 0.111001
将两浮点数的阶码相加,小数部分相乘即可。 结果为
2010 0.011011
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示
最常见的浮点数格式为IEEE 754标准。IEEE 754标准有:32 位单精度浮点数、4位双精度浮点数及80位扩展双精度浮点数。 根据标准浮点数字长由一个符号位S、指数e和无符号(小数) 的规格化尾数 m构成。 其格式如下图所示。
定点数表示就是指小数点在数中的位置是固定不变的。 常用表达形式为:
0 • 12 b
其中,最高位为符号位,0为正,1为负,小数点紧跟在符号 位后;数的本身只有小数部分,称为“尾数”; 十进制计算公式为:
b
x (1) 0 i 2i i 1
数字运算中的有效字长效应
定点数在FPGA IP核中表示
x sa1a2 L aBb1b2 L bC
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示
数字运算中的有效字长效应
结论
定点数:数据的二进制数采用定点表示动态范围小,有溢出,尾数处 理会带来截尾或舍入误差。由此,在数字系统的计算中会发生有限字 长效应。
浮点数:浮点表示法尾数的字长决定浮点表示的精度,因此在硬件中 (如DSP、FPGA)实现计算时,由于硬件资源的限制及计算速率的 要求对尾数的处理也会带来截尾或舍入误差。由于浮点表示的阶码决 定浮点数的动态范围,因此与定点相比,浮点有更大的动态范围,且 不易溢出。
主要内容
数字运算过程中的有效字长效应 输入信号经A/D变换产生的量化误差
滤波器的系数量化误差 总结
输入信号经A/D变换产生的量化误差
A/D变换的工作原理
A/D转换器是一种将输入的模拟信号x(t)转换为b位二进制数字信号的器 件。b的数值可以是8,12或高至20。它可以分为以下两部分: 采样:时间离散,幅度连续; 量化:数字编码,对采样序列作舍入或截尾处理,得有限字长数字信号 。 A/D变换器的功能原理图如下图所示。
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示 例:此处以32位单精度浮点数(1,8,23)为例:
符号位 计算结果
x (1)s 1.m 2ebias (1)1 1.100100101101 2(133127) =(-1100100.101101)2 =(100.703125)10
数字运算中的有效字长效应
定点数表示的缺点
结论
定点数作加减法时结果可能会 “溢出”
乘数法据运的算二不进溢制出数,采但用字定长点要表增示加动一态倍范。围小,有溢出,尾数处
理例会:带b=来3=×截>00.尾.0110或11 舍入误差。由此,在数字系统的计算中便会发
生有限字长效10应1 。 成为六位数,截尾变成0.001。产生误
101
式中, 为s符号位; 为B整数宽度,表示长度为 位B; 表示C 小
数宽度。
十进制计算公式为
B
C
x (1)s ( ai 2i bi 2 j )
i 1
j 1
数字运算中的有效字长效应
定点数在FPGA IP 核中表示
数字运算中的有效字长效应
定点数在FPGA IP 核中表示
数字运算中的有效字长效应
数字运算中的有效字长效应
浮点数的表示 例1:F=0.101×2010=0.625×4=2.5
符号位
符号位
01010010
数字运算中的有效字长效应
浮点数的表示
例2:若两个二进制浮点数
求 x1 及x2 x1 x2
x1 2010 0.1100, x2 2000 0.1001
x1 x2 x1 x2
数字运算中的有效字长效应
小结
综上所述,在数字运算中,数据的二进制数无论是由 定点表示还是由浮点表示,由于硬件的资源及计算速率的 要求,计算结果中均有截尾误差或舍入误差,即存在有效 字长效应。除非我们以资源或速率换取高精度,否则截尾 误差及舍入误差是难免的。
[1] 程佩青.数字信号处理教程(第三版).清华大学出版社.2007 [2] 陈后金.数字信号处理(第二版).高等教育出版社.2004
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示
最高位为符号位,O表示正数,1表示负数。其后是用原码表
示的指数e,若指数为E位,则表示范围为: 0 ~ 2,指E 数1的偏移量
下式表示:
bias 2E1 1
指数表示移位数:(2E1 1) ~ 2E1 浮点数字长的代数表达式为:
x (1)s 1.m 2ebias
前言
数字信号处理的实质:一组数值运算 从设计的角度来讨论:认为数字是无限精度的 从实现的角度考虑:数字的精度就是有限的 从设计时的无限精度到实现时的有限精度,会产生 相对于原设计系统的误差,严重时会导致系统崩溃。
前言
有限字长的影响,主要表现在以下三方面
数字运算过程中的有效字长效应
数字运算过程中为限制位数而进行尾数处理、防止溢出而 产生的有效字长效应。
输入信号经A/D变换产生的量化误差
即A/D变换器将模拟输入信号变为一组离散电平时产生的 量化误差。
滤波器的系数量化误差
即把系统系数用有限二进制数表示时产生的量化误差。
主要内容
数字运算过程中的有效字长效应 输入信号经A/D变换产生的量化误差
滤波器的系数量化误差 总结
数字运算中的有效字长效应
定点数的表示
xຫໍສະໝຸດ Baidu (t)
抽样x(nx)(n)x量a (m化)器
xˆ(n)
输入信号经A/D变换产生的量化误差
量化误差的来源
抽样 产生抽样序列x(n)=x(t)|t=nT=x(nT), x(n): 可看成是一个无限精度的数字信号 在满足抽样定理的前提下,模拟信号时间离散化的过程是可逆的。
量化 对抽样序列进行幅度上的离散化之后,用某种格式的数字代码来表示。 量化过程是不可逆的 必定要引入量化误差或量化噪声。 量化噪声的大小决定了A/D转换器的动态范围,是恒量A/D转换器性
差。
0.001111
数字运算中的有效字长效应
浮点数的表示
数码中小数点的位置是浮动的,b位二进制数分成指数部分 和尾数部分。浮点数F可表示为:
F M 2c
M:尾数,决定浮点的精
度。0.5 M 1
……
2C:指数,决定浮点 数的动态范围 C:阶码
……
符号位
bm
bc
符号位,正数小数点
往右移,负数往左移
将 x的2 阶码变成与 一x1样: x2 2010 0.001001
两数相加可得:2010 0.111001
将两浮点数的阶码相加,小数部分相乘即可。 结果为
2010 0.011011
数字运算中的有效字长效应
浮点数在FPGA IP核中的表示
最常见的浮点数格式为IEEE 754标准。IEEE 754标准有:32 位单精度浮点数、4位双精度浮点数及80位扩展双精度浮点数。 根据标准浮点数字长由一个符号位S、指数e和无符号(小数) 的规格化尾数 m构成。 其格式如下图所示。
定点数表示就是指小数点在数中的位置是固定不变的。 常用表达形式为:
0 • 12 b
其中,最高位为符号位,0为正,1为负,小数点紧跟在符号 位后;数的本身只有小数部分,称为“尾数”; 十进制计算公式为:
b
x (1) 0 i 2i i 1
数字运算中的有效字长效应
定点数在FPGA IP核中表示
x sa1a2 L aBb1b2 L bC