数字信号处理的实质是一组数值运算,这些运算可以在通用数字计算机上用软件实现,也可以用专门的硬件实现。无论哪种实现方式,数字信号处理系统的一些系数、信号序列的各个数值及运算结果都要以二进制形式存储在有限字长的存储单元中。如果存储的是模拟信号,例如常用的采样信号处理系统,输入的模拟量经过采样和模数转换后,变成有限长的数字信号。有限长的数就是有限精度的数。因此,具体实现中往往难以保证原设计精度而产生误差,甚至导致错误的结果。在数字系统中主要有三种因有限字长而引起误差的因素
一、模数转换器把模拟输入信号转换为数字信号时产生的量化效应
二、把系数用有限位二进制表示时产生的量化效应
三、数字运算过程中,为限制位数进行的位数处理和为防止溢出而压缩信号电平的有限字长效应
引起这些误差的根本原因在于寄存器(存储单元)的字长有限。误差的特性与系统的类型、结构形式、数字的表示法、运算方式及字的长短有关。在通用计算机上,字长较长,量化步很小,量化误差不大。但在专用硬件,如FPGA,实现数字系统时,其字长较短,就必须考虑有限字长效应了。
那单片机中的字长是多少呢?
通常在FPGA中采用截尾处理,在DSP中采用的是舍入处理(就是四舍五入)。那么matlab中floor函数和ceil函数分别对应着哪种处理方式呢?
记住这个指标,实际工程中经常用到。快考试了,做点题目吧!
-
转换器
+关注
关注
27文章
8621浏览量
146828 -
数字信号
+关注
关注
2文章
947浏览量
47510 -
运算
+关注
关注
0文章
130浏览量
25775
原文标题:第八章 数字信号处理中的有限字长效应(1)
文章出处:【微信号:gh_30373fc74387,微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论